Skip to content

Install using docker compose

The Ark server software is called captaind. To run captaind, you need: - a postgres database - a bitcoind node - optionally, a Core-Lightning (CLN) node with the hold plugin.

The Compose file handles all boot-time dependencies and initializations automatically using depends_on and health checks.

The shared volumes are: - captaind: persistent data for captaind. - postgres: PostgreSQL database files for captaind. - bark: data for bark. - bitcoind: blockchain and wallet data. - cln: lightning node data.

To bring up all services:

docker compose -f contrib/docker/docker-compose.yml up

Once everything is up and initialized, you can run bark commands like:

docker compose -f contrib/docker/docker-compose.yml run --rm bark bark ark-info

An example bitcoin-cli command:

docker compose -f contrib/docker/docker-compose.yml run --rm bitcoind bitcoin-cli -regtest -rpcuser=second -rpcpassword=ark -rpcconnect=bitcoind getblockchaininfo

An example captaind command:

In git bash (on windows):

docker compose -f contrib/docker/docker-compose.yml run --rm captaind captaind --config //root/captaind/captaind.toml get-mnemonic
on unix:
docker compose -f contrib/docker/docker-compose.yml run --rm captaind captaind --config /root/captaind/captaind.toml get-mnemonic

An example CLN command:

docker compose -f contrib/docker/docker-compose.yml exec cln lightning-cli --regtest getinfo