nitro-stack/stack-orchestrator/stacks/nitro-node/README.md
Isha Venikar 192e6feee3
Update nitro-node stack to use public IP from config (#3)
* Rename nitro-node stack

* Add flag for setting public IP

* Log values in the nitro-node script

* Add command to install nitro-rpc-client

* Fix directory name

* Set default value for public IP
2024-07-18 17:18:24 +05:30

1.9 KiB

Go-nitro

Setup

  • Clone the stack repo

    laconic-so fetch-stack git.vdb.to/cerc-io/nitro-stack
    
  • Clone required repositories

    laconic-so --stack ~/cerc/nitro-stack/stack-orchestrator/stacks/nitro-node setup-repositories
    

    Note: Replace path to nitro stack with actual path

  • Build the container image

    laconic-so --stack ~/cerc/nitro-stack/stack-orchestrator/stacks/nitro-node build-containers
    

Create a deployment

  • Create a spec file

    laconic-so --stack ~/cerc/nitro-stack/stack-orchestrator/stacks/nitro-node deploy init --output nitro-node-spec.yml
    
  • TODO: Edit network in the spec file to map container ports to host ports as required:

    network:
    ports:
      go-nitro:
       - 3006:3006
       - 4006:4006
       - 5006:5006
    
  • Create deployment

    laconic-so --stack ~/cerc/nitro-stack/stack-orchestrator/stacks/nitro-node deploy create --spec-file nitro-node-spec.yml --deployment-dir nitro-node-deployment
    

Configuration

  • Inside the nitro-node-deployment deployment directory, open config.env file and set following env variables:

    # URL endpoint of the chain (Example: ws://host.docker.internal:8545)
    CERC_NITRO_CHAIN_URL=
    
    # Private key of account to be used by Nitro node (derived address is used as Nitro address)
    CERC_NITRO_PK=
    
    # Private key of the account on chain that is used for funding channels in Nitro node
    CERC_NITRO_CHAIN_PK=
    
    # Port to be used by P2P message service (Example: 3009)
    CERC_NITRO_MSG_PORT=
    
    # Port to be used by RPC server (Example: 4009)
    CERC_NITRO_RPC_PORT=4009
    
    # Optional
    # Contract addresses of NitroAdjudicator, VirtualPaymentApp and ConsensusApp
    # TODO: Contracts are deployed if addresses are not set
    CERC_NA_ADDRESS=
    CERC_VPA_ADDRESS=
    CERC_CA_ADDRESS=
    

Start the deployment

laconic-so deployment --dir nitro-node-deployment start