# nitro-node ## Setup - Clone the stack repo ```bash laconic-so fetch-stack git.vdb.to/cerc-io/nitro-stack ``` - Clone required repositories ```bash 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 ```bash laconic-so --stack ~/cerc/nitro-stack/stack-orchestrator/stacks/nitro-node build-containers ``` ## Create a deployment - Create a spec file ```bash 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: ```bash network: ports: go-nitro: - 3005:3005 - 4005:4005 ``` - Create deployment ```bash 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: ```bash # URL endpoint of the chain (Example: ws://host.docker.internal:8545) NITRO_CHAIN_URL= # Private key of account to be used by Nitro node (derived address is used as Nitro address) NITRO_PK= # Private key of the account on chain that is used for funding channels in Nitro node NITRO_CHAIN_PK= # Port to be used by P2P message service (Example: 3009) NITRO_MSG_PORT= # Port to be used by RPC server (Example: 4009) NITRO_RPC_PORT=4009 # Contract address of NitroAdjudicator NA_ADDRESS= # Contract address of VirtualPaymentApp VPA_ADDRESS= # Contract address of ConsensusApp CA_ADDRESS= # Address of the bridge node BRIDGE_ADDRESS= ``` ## Start the deployment ```bash laconic-so deployment --dir nitro-node-deployment start ```