Docker compose
Configure Environment Variables
Navigate to the docker-compose folder where
docker-compose.yaml
file is located.
Create a
.env
file in the same folder. it should contain the following variables:
NODE_OPERATOR_NAME
: A unique and descriptive name identifying the organization or entity running the node. This name is used for monitoring and should be chosen carefully to ensure it is both meaningful and recognizable (e.g., include your organization name or geographical region). Providing a clear name helps distinguish your node in dashboards and logs.CHAIN_ID
: set the chain ID valuePRIVATE_KEY
: Your private key for the deployment.DEPLOYED_CONTRACT
: The contract address. Initially, leave this empty during the first deployment to retrieve the deployed contract.
The following pushgateway vars are mandatory for official DIA node operators. If you're an official operator, please reach out to the team to get these credentials. For developers testing the system, these credentials are optional and can be skipped.
PUSHGATEWAY_URL
: The Pushgateway endpoint used for pushing metrics to Prometheus.PUSHGATEWAY_USER
: to allow decentralized-feeder authenticate towards the monitoring server.PUSHGATEWAY_PASSWORD
: to allow decentralized-feeder authenticate towards the monitoring server.
For additional environment variable configurations, refer to Adding Exchange Pairs and Watchdog environment variables.
E.g. Env file:
Open a terminal in the
docker-compose
folder and start the deployment by running:
Retrieve Deployed Contract
Once the container is deployed with
DEPLOYED_CONTRACT
env variable empty the logs will display the deployed contract address in the following format:
Copy the displayed contract address (e.g.,
0xxxxxxxxxxxxxxxxxxxxxxxxxx
) and stop the container with
Check if the container is running correctly by viewing the logs. Run the following command:
Look for logs similar to the example below, which indicate a successful startup:
Remove Container (Optional)
You can optionally cleanup the deployment once you're done by running:
Verify the container has been removed:
Last updated