diff --git a/README.md b/README.md index 006529b..da7d8f9 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,41 @@ # VLS Containers +## Installing Docker + +### Docker Documentation + +Docker Engine is available on a variety of Linux distros, macOS, and Windows 10 through Docker Desktop, and as a static binary installation. Refer to the official [docker documentation](https://docs.docker.com/engine/install/) + +- [Ubuntu](https://docs.docker.com/engine/install/ubuntu/) +- [Fedora](https://docs.docker.com/engine/install/fedora/) + +### Distro Packages + +Debian/Ubuntu: +``` +sudo apt install docker.io docker-doc docker-compose containerd runc +sudo systemctl enable --now docker +``` + +Fedora/RHEL: +``` +sudo dnf install docker docker-compose containerd runc +sudo systemctl enable --now docker +``` + +### Docker Compose Compatibility + +- Currently available `docker-compose` package in different linux distributions (debian, ubuntu, fedora, etc) are not up to date, they are still at version `1` which has been deprecated by `docker` with release of version `2`. +- `docker-compose` version `2` is available through official docker repositories not the distribution ones. +- Docker Images in this repository work with version 2 and are also __backward compatible__ with version 1. +- If you are using the distribution installation the `docker compose` command used below has to be changed to `docker-compose` instead. + ## Volume Creation ``` docker volume create bitcoin_data docker volume create lightning_data +docker volume create txood_data ``` ## Docker Compose Run @@ -22,6 +53,7 @@ We have three possible overrides over the default `testnet` configuration in `do To use override we have to pass it down both the config using `-f` flag: ``` +export COMPOSE_PROJECT_NAME= docker compose -f docker-compose.yml -f up --build ``` @@ -33,18 +65,17 @@ We have to run these commands after bitcoind is up and running. Create Wallet: ``` -docker container exec -it bitcoind bitcoin-cli createwallet default +docker container exec bitcoind-regtest bitcoin-cli createwallet default ``` Generate Address for node: ``` -docker container exec -it bitcoind bitcoin-cli getnewaddress +docker container exec bitcoind-regtest bitcoin-cli getnewaddress ``` Generate Blocks ``` -docker container exec -it bitcoind bitcoin-cli generatetoaddress 50 $NODE_ADDRESS - +docker container exec bitcoind-regtest bitcoin-cli generatetoaddress 50 $NODE_ADDRESS ``` ### References diff --git a/bitcoind/Dockerfile b/bitcoind/Dockerfile index 4c4418d..6e3a786 100644 --- a/bitcoind/Dockerfile +++ b/bitcoind/Dockerfile @@ -122,10 +122,10 @@ COPY assets/bitcoin.conf /bitcoin.conf COPY bitcoind/healthcheck.sh /healthcheck.sh RUN chmod +x /healthcheck.sh -VOLUME ["${BITCOIN_DATA}"] +RUN mkdir "${BITCOIN_DATA}" +RUN chown bitcoin:bitcoin "${BITCOIN_DATA}" -RUN mkdir -p "${BITCOIN_DATA}" -RUN chown -R bitcoin:bitcoin "${BITCOIN_DATA}" +VOLUME ["${BITCOIN_DATA}"] USER bitcoin diff --git a/docker-compose.mainnet.yml b/docker-compose.mainnet.yml index e92f37e..d1820c0 100644 --- a/docker-compose.mainnet.yml +++ b/docker-compose.mainnet.yml @@ -1,5 +1,4 @@ version: "3.8" -name: main services: bitcoin-core: container_name: bitcoind-main diff --git a/docker-compose.regtest.yml b/docker-compose.regtest.yml index 5b86cb9..d1d2a34 100644 --- a/docker-compose.regtest.yml +++ b/docker-compose.regtest.yml @@ -1,5 +1,4 @@ version: "3.8" -name: regtest services: bitcoin-core: container_name: bitcoind-regtest diff --git a/docker-compose.testnet.yml b/docker-compose.testnet.yml index 250495a..6e9bf94 100644 --- a/docker-compose.testnet.yml +++ b/docker-compose.testnet.yml @@ -1,5 +1,4 @@ version: "3.8" -name: testnet services: bitcoin-core: ports: diff --git a/docker-compose.yml b/docker-compose.yml index 2826a0e..daf88e2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -46,7 +46,7 @@ services: context: . image: txood container_name: txood-test - restart: always + restart: unless-stopped command: - -r http://rpcuser:VLSsigner1@bitcoind:18332 networks: