| one-touch | ||
| communitycoins.sh | ||
| README.md | ||
| Sovereign-Local-Build-Mode.md | ||
CommunityCoins Deployment (cc-deploy)
cc-deploy defines how CommunityCoins infrastructure is deployed with Docker Compose.
It provides a practical operator layer for running:
- legacy Bitcoin-era core forks
- the CommunityCoins Ring-of-Trust (ROT) service
This repository does not contain protocol software itself. (These are collected in the Core-wallet organisation)
It does define how protocol software is built, started, and operated.
Scope
cc-deploy aims to keep deployment:
- explicit
- reproducible
- operator-controlled
- easy to inspect
The primary target is a modern Linux host with Docker Engine and Docker Compose.
Docker is used here as an operational tool for packaging, isolation, and reproducibility. It is not treated as a claim of universal platform independence.
Requirements
Before using this repository, make sure the host has:
- Docker Engine
- Docker Compose v2 or newer
- enough disk space for source trees, image layers, and blockchain data
Linux is the reference platform.
Repository role
CommunityCoins separates concerns between repositories:
| Layer | Responsibility |
|---|---|
| Core repositories | Protocol software and coin-specific Docker build logic |
cc-deploy |
Compose-based deployment and operator workflow |
| ROT | Trust and verification layer |
This repository is the deployment layer.
Layout conventions
This repository assumes:
- one project name per coin
- one
.envfile per coin - consistent service naming inside Compose
- operator-visible Docker commands
Typical conventions:
- project name:
<coin> - env file:
env/<coin>.env
First steps
Clone the deployment repository enter it and build shared bootstrap image:
git clone https://git.communitycoins.org/Communitycoins.Rooty/cc-deploy
cd cc-deploy
docker compose -f communitycoins-bootstrap.yml build
Operator command map
The table below maps those actions directly to Docker Compose and Docker commands.
Here a coin stack means the core daemon and the ROT SPV service combined
| Operator action | Direct command |
|---|---|
| Build shared build-time image | docker compose -f communitycoins-bootstrap.yml build |
| Build one coin | docker compose -p <coin> --env-file env/<coin>.env build |
| Build one coin without cache | docker compose -p <coin> --env-file env/<coin>.env build --no-cache |
| Start one coin stack | docker compose -p <coin> --env-file env/<coin>.env up -d |
| Build and start one coin stack | docker compose -p <coin> --env-file env/<coin>.env up -d --build |
| Stop one coin stack | docker compose -p <coin> --env-file env/<coin>.env down |
| Restart a coin stack | docker compose -p <coin> --env-file env/<coin>.env restart |
| Restart one service (core or rot) | docker compose -p <coin> --env-file env/<coin>.env restart <service> |
| Follow logs for a coin stack | docker compose -p <coin> --env-file env/<coin>.env logs -f |
| Follow logs for one service | docker compose -p <coin> --env-file env/<coin>.env logs -f <service> |
| Show containers | docker ps -a --format 'table {{.Names}}\t{{.Status}}' |
| Show memory usage | docker stats --no-stream --format "table {{.Name}}\t{{.MemUsage}}" |
| Recreate ROT after an update | rebuild shared images, then recreate rot per deployed coin |
| Enter a container | docker compose -p <coin> --env-file env/<coin>.env exec <service> bash |
| Run RPC commands | enter the core container and use the coin-specific CLI manually |
| Show help | docker compose --help or docker compose <command> --help |
Build all supported coins
Docker Compose does not provide one single built-in command to build all coins across multiple .env files.
That simply means repeating the per-coin build command.
docker compose -f communitycoins-bootstrap.yml build
docker compose -p auroracoin --env-file env/auroracoin.env build
docker compose -p bolivarcoin --env-file env/bolivarcoin.env build
docker compose -p canadaecoin --env-file env/canadaecoin.env build
docker compose -p cryptoescudo --env-file env/cryptoescudo.env build
docker compose -p egulden --env-file env/egulden.env build
docker compose -p emark --env-file env/emark.env build
docker compose -p fujicoin --env-file env/fujicoin.env build
docker compose -p kobocoin --env-file env/kobocoin.env build
docker compose -p mazacoin --env-file env/mazacoin.env build
docker compose -p pakcoin --env-file env/pakcoin.env build
docker compose -p russianbitcoin --env-file env/russianbitcoin.env build
Bringing a single coin stack to life can take a considerable amount of time. That depends on the synchronization speed of that network and the size of its history.
On a healthy system, several coin stacks can synchronize in parallel. Once synchronized, all coin stacks together are expected to require about 20 GB of RAM as of 2026.