UNPKG

@hyperlane-xyz/core

Version:

Core solidity contracts for Hyperlane

116 lines (77 loc) 3.54 kB
# Using docker-compose for local development The docker-compose configuration present in this directory allows to quickly run a local development environment. # Requirements - [docker-compose](https://docs.docker.com/compose/install/) # Using the compose script You should use the script `compose` located in the `chainlink/tools/docker` directory. To see a list of available commands, perform the following: ```sh cd tools/docker ./compose help ``` ## Env vars ### .env file .env file is used to set the environment variables for the docker-compose commands ### Compose script env vars The following env vars are used for the compose script : - `GETH_MODE=true` to use geth instead of parity - `CHAIN_ID=<number>` to specify the chainID (default is 34055 for parity and 1337 for geth) - `HTTPURL=<url>` to specify the RPC node HTTP url (default is set if you use geth or parity) - `WSURL=<url>` to specify the RPC node WS url (default is set if you use geth or parity) If you specify both `HTTPURL` and `WSURL`, it won't run the devnet RPC node. for example : ```sh CHAIN_ID=11155111 WSURL=wss://eth.sepolia HTTPURL=https://eth.sepolia ./compose dev ``` ## Dev Will run one node with a postgres database and by default a devnet RPC node that can be either geth or parity. ```sh ./compose dev ``` The chainlink node can be reached at `http://localhost:6688` Credentials for logging into the operator-ui can be found [here](../../tools/secrets/apicredentials) ## Up Runs all services including two nodes with two postgres databases and by default a devnet RPC node that can be either geth or parity. ```sh ./compose up ``` ## Cleaning up To remove any containers, volumes, and networks related to our docker-compose setup, we can run the `clean` command: ```sh ./compose clean ``` ## Logs You can use logs command to see the logs of a specific service or all services. ```sh ./compose logs node # shows the logs of the node service ``` ```sh ./compose logs # shows the combined logs of all running services ``` ## Connecting to the dev environment ```sh # connect to the container by opening bash prompts ./compose connect ``` # Troubleshooting ## My storage space is full! How do I clean up docker's disk usage? ``` docker system prune ``` ## The build process takes up a lot of resources / brings my computer to a halt The default configuration tries to build everything in parallel. You can avoid this by clearing the Docker Compose build options. ``` # Use docker compose's default build configuration export DOCKER_COMPOSE_BUILD_OPTS="" ``` ## Logging from a container is hidden Sometimes docker-compose does not show logging from some docker containers. This can be solved by using the docker command directly. ``` # List docker instances docker ps # CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES # 41410c9d79d8 smartcontract/chainlink "chainlink node star…" 2 minutes ago Up 2 minutes 0.0.0.0:6688->6688/tcp chainlink-node # f7e657e101d8 smartcontract/devnet "/bin/parity --confi…" 47 hours ago Up 2 minutes 5001/tcp, 8080/tcp, 8082-8083/tcp, 8180/tcp, 8546/tcp, 30303/tcp, 0.0.0.0:8545->8545/tcp, 30303/udp parity # Follow logs using name of container docker logs -f chainlink-node ```