> For the complete documentation index, see [llms.txt](https://docs.lumoz.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.lumoz.org/verifier/setup-verifier-node/setup-node/build-your-own/1.-build-rpc-of-lumoz-chain.md).

# 1. Build RPC of Lumoz Chain

## Requirements

CPU: 8 core +

RAM: 16 Gb+

Storage: 500 Gb+<br>

## Docker&#x20;

1. Download docker-compose.yml

```javascript
curl -L -o ./docker-compose.yml https://download.lumoz.org/lumoz-external-node/docker-run/docker-compose.yml
```

2. Download snapshot of Genesis file under the root path of docker-compose.yml

```javascript
curl -L -o /tmp/genesis.tar https://download.lumoz.org/lumoz-external-node/lumoz-external-node/geth/mainnet/config/genesis.tar && tar -xvf /tmp/genesis.tar -C ./ && rm /tmp/genesis.tar
```

3. Start RPC

```javascript
docker-compose up -d
```

4. Check logs

```javascript
docker logs -f lumoz-mainnet-node
```

5. Test

```javascript
curl http://localhost:9545 \
  -X POST \
  -H "Content-Type: application/json" \
  --data '{"method":"eth_blockNumber","params":[],"id":1,"jsonrpc":"2.0"}'
```

### Note:

RPC address(default): device IP+9545

WS address(default): device IP+9546

> If IP is 1.2.3.4, the RPC address will be <http://1.2.3.4:9545>, and the WS address will be WS://1.2.3.4:9546

#### Customize port

Edit the docker-compose.yml if you want to change the port.

{% hint style="info" %}
Port 33666 needs to be opened for external access. This port facilitates stable P2P connections with other external nodes for block data synchronization.
{% endhint %}
