forked from michael.heier/citadel-core
61bcc065c6
Should fix those issues with 0.14.0
260 lines
7.8 KiB
YAML
260 lines
7.8 KiB
YAML
version: '3.8'
|
|
services:
|
|
tor:
|
|
container_name: tor
|
|
image: lncm/tor:0.4.6.8@sha256:c262923ffd0bd224a4a4123cf1c88eea11e2314566b7b7e8a1f77969deeb0208
|
|
user: toruser
|
|
restart: on-failure
|
|
volumes:
|
|
- ${PWD}/tor/torrc-core:/etc/tor/torrc
|
|
- ${PWD}/tor/data:/var/lib/tor/
|
|
ports:
|
|
- 127.0.0.1:$TOR_PROXY_PORT:$TOR_PROXY_PORT
|
|
networks:
|
|
default:
|
|
ipv4_address: $TOR_PROXY_IP
|
|
app_tor:
|
|
container_name: app_tor
|
|
image: lncm/tor:0.4.6.8@sha256:c262923ffd0bd224a4a4123cf1c88eea11e2314566b7b7e8a1f77969deeb0208
|
|
user: toruser
|
|
restart: on-failure
|
|
volumes:
|
|
- ${PWD}/tor/torrc-apps:/etc/tor/torrc
|
|
- ${PWD}/tor/data:/var/lib/tor/
|
|
networks:
|
|
default:
|
|
ipv4_address: $APPS_TOR_IP
|
|
app_2_tor:
|
|
container_name: app_2_tor
|
|
image: lncm/tor:0.4.6.8@sha256:c262923ffd0bd224a4a4123cf1c88eea11e2314566b7b7e8a1f77969deeb0208
|
|
user: toruser
|
|
restart: on-failure
|
|
volumes:
|
|
- ${PWD}/tor/torrc-apps-2:/etc/tor/torrc
|
|
- ${PWD}/tor/data:/var/lib/tor/
|
|
networks:
|
|
default:
|
|
ipv4_address: $APPS_2_TOR_IP
|
|
app_3_tor:
|
|
container_name: app_3_tor
|
|
image: lncm/tor:0.4.6.8@sha256:c262923ffd0bd224a4a4123cf1c88eea11e2314566b7b7e8a1f77969deeb0208
|
|
user: toruser
|
|
restart: on-failure
|
|
volumes:
|
|
- ${PWD}/tor/torrc-apps-3:/etc/tor/torrc
|
|
- ${PWD}/tor/data:/var/lib/tor/
|
|
networks:
|
|
default:
|
|
ipv4_address: $APPS_3_TOR_IP
|
|
nginx:
|
|
container_name: nginx
|
|
image: nginx:1.21.3@sha256:644a70516a26004c97d0d85c7fe1d0c3a67ea8ab7ddf4aff193d9f301670cf36
|
|
depends_on:
|
|
- dashboard
|
|
- manager
|
|
volumes:
|
|
- ${PWD}/nginx:/etc/nginx
|
|
restart: on-failure
|
|
stop_grace_period: 30s
|
|
ports:
|
|
- ${NGINX_PORT}:80
|
|
networks:
|
|
default:
|
|
ipv4_address: $NGINX_IP
|
|
bitcoin:
|
|
container_name: bitcoin
|
|
image: lncm/bitcoind:v22.0@sha256:37a1adb29b3abc9f972f0d981f45e41e5fca2e22816a023faa9fdc0084aa4507
|
|
depends_on:
|
|
- tor
|
|
- manager
|
|
- nginx
|
|
volumes:
|
|
- ${PWD}/bitcoin:/data/.bitcoin
|
|
restart: on-failure
|
|
stop_grace_period: 15m30s
|
|
ports:
|
|
- $BITCOIN_P2P_PORT:$BITCOIN_P2P_PORT
|
|
networks:
|
|
default:
|
|
ipv4_address: $BITCOIN_IP
|
|
lnd:
|
|
container_name: lnd
|
|
image: lightninglabs/lnd:v0.14.1-beta@sha256:810f290f4da51adaf57d53bc1f1e65b52b03c543f322da0b98fb8c47be94a27a
|
|
user: 1000:1000
|
|
depends_on:
|
|
- tor
|
|
- manager
|
|
volumes:
|
|
- ${PWD}/lnd:/data/.lnd
|
|
- ${PWD}/walletpassword:/walletpassword
|
|
environment:
|
|
HOME: /data
|
|
restart: on-failure
|
|
stop_grace_period: 5m30s
|
|
ports:
|
|
- 9735:9735
|
|
- $LND_REST_PORT:$LND_REST_PORT
|
|
- $LND_GRPC_PORT:$LND_GRPC_PORT
|
|
networks:
|
|
default:
|
|
ipv4_address: $LND_IP
|
|
dashboard:
|
|
container_name: dashboard
|
|
image: ghcr.io/runcitadel/dashboard:main@sha256:dcfec33ce1682554490f32522855bb142e885e1e328fb5ec469ab09041a92889
|
|
restart: on-failure
|
|
stop_grace_period: 1m30s
|
|
networks:
|
|
default:
|
|
ipv4_address: $DASHBOARD_IP
|
|
manager:
|
|
container_name: manager
|
|
image: ghcr.io/runcitadel/manager:main@sha256:b79571dea3e9b1115057c89c5ba7c49ccbfba3d21d24f0fee11535603d9d448b
|
|
depends_on:
|
|
- tor
|
|
- redis
|
|
restart: on-failure
|
|
init: true
|
|
stop_grace_period: 5m30s
|
|
volumes:
|
|
- ${PWD}:${PWD}
|
|
- ${PWD}/info.json:/info.json
|
|
- ${PWD}/db:/db
|
|
- ${PWD}/events/signals:/signals
|
|
- ${PWD}/apps:/apps
|
|
- ${PWD}/lnd:/lnd:ro
|
|
- ${PWD}/statuses:/statuses
|
|
- ${PWD}/tor/data:/var/lib/tor/
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- ${DOCKER_BINARY:-/usr/bin/docker}:/usr/bin/docker
|
|
- jwt-public-key:/jwt-public-key
|
|
- jwt-private-key:/jwt-private-key
|
|
environment:
|
|
PORT: '3006'
|
|
USER_PASSWORD_FILE: /db/user.json
|
|
JWT_PUBLIC_KEY_FILE: /jwt-public-key/jwt.pem
|
|
JWT_PRIVATE_KEY_FILE: /jwt-private-key/jwt.key
|
|
JWT_EXPIRATION: '3600'
|
|
DOCKER_COMPOSE_DIRECTORY: $PWD
|
|
DEVICE_HOSTS: ${DEVICE_HOSTS:-"http://citadel.local"}
|
|
DEVICE_HOSTNAME: ${DEVICE_HOSTNAME:-""}
|
|
MIDDLEWARE_API_URL: http://$MIDDLEWARE_IP
|
|
SEED_FILE: /db/citadel-seed/seed
|
|
DASHBOARD_HIDDEN_SERVICE_FILE: /var/lib/tor/web/hostname
|
|
BITCOIN_P2P_HIDDEN_SERVICE_FILE: /var/lib/tor/bitcoin-p2p/hostname
|
|
BITCOIN_P2P_PORT: $BITCOIN_P2P_PORT
|
|
BITCOIN_RPC_HIDDEN_SERVICE_FILE: /var/lib/tor/bitcoin-rpc/hostname
|
|
BITCOIN_RPC_PORT: $BITCOIN_RPC_PORT
|
|
BITCOIN_RPC_USER: $BITCOIN_RPC_USER
|
|
BITCOIN_RPC_PASSWORD: $BITCOIN_RPC_PASS
|
|
LND_REST_HIDDEN_SERVICE_FILE: /var/lib/tor/lnd-rest/hostname
|
|
LND_GRPC_HIDDEN_SERVICE_FILE: /var/lib/tor/lnd-grpc/hostname
|
|
LND_CERT_FILE: /lnd/tls.cert
|
|
LND_ADMIN_MACAROON_FILE: /lnd/data/chain/bitcoin/${BITCOIN_NETWORK}/admin.macaroon
|
|
SHUTDOWN_SIGNAL_FILE: /signals/shutdown
|
|
REBOOT_SIGNAL_FILE: /signals/reboot
|
|
GITHUB_REPO: runcitadel/core
|
|
GITHUB_BRANCH: main
|
|
VERSION_FILE: /info.json
|
|
UPDATE_STATUS_FILE: /statuses/update-status.json
|
|
UPDATE_SIGNAL_FILE: /signals/update
|
|
UPDATE_LOCK_FILE: /statuses/update-in-progress
|
|
BACKUP_STATUS_FILE: /statuses/backup-status.json
|
|
DEBUG_STATUS_FILE: /statuses/debug-status.json
|
|
TOR_PROXY_IP: ${TOR_PROXY_IP}
|
|
TOR_PROXY_PORT: ${TOR_PROXY_PORT}
|
|
TOR_HIDDEN_SERVICE_DIR: /var/lib/tor
|
|
IS_CITADEL_OS: ${IS_CITADEL_OS:-"false"}
|
|
REDIS_PASSWORD: freedom
|
|
REDIS_IP: $REDIS_IP
|
|
REDIS_PORT: 6379
|
|
networks:
|
|
default:
|
|
ipv4_address: $MANAGER_IP
|
|
middleware:
|
|
container_name: middleware
|
|
image: ghcr.io/runcitadel/middleware:main@sha256:12870a6f6f0601cc7850e26613370b55d8b92a404ac7dcc88ab395051214882c
|
|
depends_on:
|
|
- manager
|
|
- bitcoin
|
|
- lnd
|
|
- redis
|
|
command:
|
|
- ./wait-for-node-manager.sh
|
|
- $MANAGER_IP
|
|
- npm
|
|
- start
|
|
restart: on-failure
|
|
volumes:
|
|
- ${PWD}/lnd:/lnd
|
|
- jwt-public-key:/jwt-public-key
|
|
environment:
|
|
PORT: '3005'
|
|
BITCOIN_HOST: $BITCOIN_IP
|
|
RPC_PORT: $BITCOIN_RPC_PORT
|
|
RPC_USER: $BITCOIN_RPC_USER
|
|
RPC_PASSWORD: $BITCOIN_RPC_PASS
|
|
LND_NETWORK: $BITCOIN_NETWORK
|
|
LND_HOST: ${LND_IP}
|
|
JWT_PUBLIC_KEY_FILE: /jwt-public-key/jwt.pem
|
|
DEVICE_HOSTS: ${DEVICE_HOSTS:-"http://citadel.local"}
|
|
networks:
|
|
default:
|
|
ipv4_address: $MIDDLEWARE_IP
|
|
neutrino-switcher:
|
|
container_name: neutrino-switcher
|
|
image: lncm/neutrino-switcher:1.0.5@sha256:3ddf58c5599ba22db8414f2694bfeeba086455d4a19b4955b26c3ae5e967d42a
|
|
depends_on:
|
|
- bitcoin
|
|
- lnd
|
|
restart: on-failure
|
|
volumes:
|
|
- ${PWD}/lnd:/lnd
|
|
- ${PWD}/statuses:/statuses
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
environment:
|
|
JSONRPCURL: http://${BITCOIN_IP}:${BITCOIN_RPC_PORT}
|
|
RPCUSER: $BITCOIN_RPC_USER
|
|
RPCPASS: $BITCOIN_RPC_PASS
|
|
LND_CONTAINER_NAME: lnd
|
|
SLEEPTIME: 3600
|
|
networks:
|
|
default:
|
|
ipv4_address: $NEUTRINO_SWITCHER_IP
|
|
electrs:
|
|
container_name: electrs
|
|
image: ghcr.io/runcitadel/electrs:v0.9.2@sha256:ab756976bceb1c209c89510db5c41b4540675eb3e65202fa843be95d0e6122b9
|
|
working_dir: /data
|
|
volumes:
|
|
- ${PWD}/bitcoin:/bitcoin:ro
|
|
- ${PWD}/electrs:/data
|
|
restart: on-failure
|
|
stop_grace_period: 5m
|
|
ports:
|
|
- $ELECTRUM_PORT:$ELECTRUM_PORT
|
|
networks:
|
|
default:
|
|
ipv4_address: $ELECTRUM_IP
|
|
redis:
|
|
container_name: redis
|
|
image: redis:6.2@sha256:a89cb097693dd354de598d279c304a1c73ee550fbfff6d9ee515568e0c749cfe
|
|
working_dir: /data
|
|
volumes:
|
|
- ${PWD}/redis:/data
|
|
command: redis-server --requirepass freedom
|
|
restart: on-failure
|
|
stop_grace_period: 1m
|
|
init: true
|
|
networks:
|
|
default:
|
|
ipv4_address: $REDIS_IP
|
|
networks:
|
|
default:
|
|
name: citadel_main_network
|
|
ipam:
|
|
driver: default
|
|
config:
|
|
- subnet: $NETWORK_IP/24
|
|
volumes:
|
|
jwt-public-key: null
|
|
jwt-private-key: null
|