Node Docs
Product DocsTechnical DocsLearning & GovernanceUseful Links
  • Node documentation for cheqd network
  • 👉Getting Started
    • Setup a new cheqd node
      • Pre-Requisites & Requirements
      • (Alternative) Install with Docker
      • Configure cosmovisor
    • Command Line usage
      • Manage keys
      • Manage accounts
      • Manage a node
      • Make transactions
      • Use fee abstraction
  • 🏦Validator Guides
    • Guide for validators
      • FAQs for validators
      • Optimising disk storage with pruning
      • Troubleshooting consistently high CPU/memory loads
      • Unjailing a jailed validator
      • Move validator to a different machine
      • Backup and restore node keys with Hashicorp Vault
    • Network-wide Software Upgrades
      • Upgrade Guides
        • Upgrade to v0.6.x
        • Upgrade to v2.x (with Ubuntu 24.04 LTS upgrade)
        • Upgrade to v3.x
        • Upgrade to v3.1.x
      • Creating a software upgrade proposal
      • Upgrade Process
  • 🧑‍💻Developing on cheqd
    • Building from source
      • Build with Docker
      • Run a localnet with Docker
    • Indexers
      • SubQuery
  • Architecture
    • Architecture Decision Record (ADR) Process
    • Identity ADRs
    • List of ADRs
      • ADR 001: Payment mechanism for issuing credentials
      • ADR 002: Importing/exporting mnemonic keys from Cosmos
      • ADR 003: Command Line Interface (CLI) tools
      • ADR 004: Token fractions
      • ADR 005: Genesis parameters
      • ADR 006: Community tax
      • ADR 007: Revocation registry
      • ADR 011: AnonCreds
      • ADR Template
  • 🤝Contributing to cheqd
    • Contributor Guide
    • License
    • Code of Conduct
    • Security Policy
  • 🆘Support
    • System Status
    • Slack Channel
    • Discord
Powered by GitBook
LogoLogo

General

  • Website
  • Blog
  • Get $CHEQ

Product Docs

  • Product Docs
  • cheqd Studio
  • Creds.xyz

Technical Docs

  • Node Docs
  • GitHub
  • Block Explorer

Learning Docs

  • Learning Docs
  • Governance Docs
  • Governance Forum
  • Governance Explorer
On this page
  • Context
  • Pre-requisites
  • Special guidance for Mac OS running on Apple silicon (M-series chips)
  • Usage
  • Fetch the latest stable Docker image
  • Modify environment variables used by Docker Compose
  • Start Docker container
  • Stop running container
  • Advanced usage

Was this helpful?

Edit on GitHub
Export as PDF
  1. Getting Started
  2. Setup a new cheqd node

(Alternative) Install with Docker

Last updated 2 years ago

Was this helpful?

Context

We provide for installation by those who want to run on Docker-based systems.

Docker-based installations are useful when running non-validator (observer) nodes that can be auto-scaled according to demand, or if you're a developer who setup a localnet / access node CLI without running a node.

⚠️ It is NOT recommended to run a validator node using Docker since you need to be absolutely certain about not running two Docker containers as validator nodes simultaneously. If two Docker containers with the same validator keys are active at the same time, this could be perceived by the network as a validator compromise / double-signing infraction and result in jailing / slashing.

Pre-requisites

pre-requisites below, either as individual installs or using (if running on a developer machine):

  1. Docker Engine v20.10.x and above (use docker -v to check)

  2. Docker Compose v2.3.x and above (use docker compose version to check)

Our Docker Compose files . The primary difference in usage is that Docker Compose's new implementation uses docker compose commands (with a space), rather than the legacy docker-compose although they are supposed to be drop-in replacements for each other.

Special guidance for Mac OS running on Apple silicon (M-series chips)

Most issues with Docker that get raised with us are typically with for.

Other issues are due to developers . If your issues are specifically with Docker Compose, make sure the command used is docker compose (with a space).

Usage

Fetch the latest stable Docker image

docker pull ghcr.io/cheqd/cheqd-node:latest

Modify environment variables used by Docker Compose

Both of the .env files are signposted with the REQUIRED and OPTIONAL parameters that can be defined. You must fill out the required configuration parameters.

Start Docker container

Using Docker Compose

Once the environment variable files are edited, bringing up a Docker container is as simple as:

docker compose -f docker/persistent-chains/docker-compose.yml --env-file docker/persistent-chains/docker-compose.env up --detach

Using Docker

If you decide not to use the Docker Compose method, you'll need to configure node settings and volumes for the container manually.

Once you've configured these manually, start using

docker run ghcr.io/cheqd/cheqd-node:latest

Alternatively, if you want to just start with the bash terminal without actually starting a node, you could use:

docker run -it --entrypoint /bin/bash ghcr.io/cheqd/cheqd-node:latest

Stop running container

To stop a detached container that was started using Docker Compose, use:

docker compose -f docker/persistent-chains/docker-compose.yml down

If you also want to remove the container volumes when stopping, add the --volumes flag to the command:

docker compose -f docker/persistent-chains/docker-compose.yml down --volumes

Be careful with removing volumes, since critical data such as node/validator keys will also be removed when volumes are removed. There's no way to get these back, unless you've backed them up independently.

Advanced usage

We have additional guides for the following advanced usage scenarios:

Pull a (replace latest with a different version tag if you want to pull something other than the latest version):

We provide . This is broken down into three files that need to be modified with the configuration parameters:

: Docker Compose file

: Environment variables used in docker-compose.yml

: Environment variables used inside the cheqd-node container

Note: The file paths above for the -f and --env-file parameter are relative to the . Please modify the file paths for the correct relative/absolute paths on the system where you are executing the commands.

to create custom images

with multiple nodes to simulate a network

👉
a pre-built cheqd-node Docker image
Install Docker
Docker Desktop
use Compose v2 syntax
developers running Mac OS with Apple M-series chips, which Docker has special guidance
using the legacy docker-compose CLI rather than the new docker compose CLI
pre-built cheqd-node Docker image from Github Container Registry
a simple Docker Compose file to bring a node up with the required configuration
docker-compose.yml
docker-compose.env
container.env
root folder of the cheqd-node repository
Build your own image using Docker
Run a Docker-based localnet