umbrel-apps/btcpay-server/docker-compose.yml
Andrew Camilleri 56c4e228cc
Update BTCPay Server to use direct postgres nbx connection (#235)
Co-authored-by: Steven Briscoe <me@stevenbriscoe.com>
2022-10-31 18:51:06 +10:00

78 lines
3.2 KiB
YAML

version: "3.7"
services:
app_proxy:
environment:
APP_HOST: $APP_BTCPAY_SERVER_IP
APP_PORT: $APP_BTCPAY_SERVER_PORT
PROXY_AUTH_ADD: "false"
nbxplorer:
image: nicolasdorier/nbxplorer:2.3.42@sha256:c6b255498b1bad64cdf874459edd163c6a84f9b39118ecc4ad0816900f7647d4
user: "1000:1000"
restart: on-failure
stop_grace_period: 1m
depends_on: [postgres]
volumes:
- ${APP_DATA_DIR}/data/nbxplorer:/data
environment:
NBXPLORER_DATADIR: "/data"
NBXPLORER_NETWORK: "$APP_BITCOIN_NETWORK"
NBXPLORER_BIND: 0.0.0.0:32838
NBXPLORER_CHAINS: "btc"
NBXPLORER_SIGNALFILEDIR: "/data"
NBXPLORER_BTCRPCURL: "http://$APP_BITCOIN_NODE_IP:$APP_BITCOIN_RPC_PORT"
NBXPLORER_BTCNODEENDPOINT: $APP_BITCOIN_NODE_IP:$APP_BITCOIN_P2P_PORT
NBXPLORER_BTCRPCUSER: $APP_BITCOIN_RPC_USER
NBXPLORER_BTCRPCPASSWORD: $APP_BITCOIN_RPC_PASS
NBXPLORER_POSTGRES: User ID=postgres;Host=$APP_BTCPAY_SERVER_DB_IP;Port=5432;Application Name=nbxplorer;MaxPoolSize=20;Database=nbxplorer$APP_BITCOIN_NETWORK
NBXPLORER_AUTOMIGRATE: 1
NBXPLORER_NOMIGRATEEVTS: 1
networks:
default:
ipv4_address: $APP_BTCPAY_SERVER_NBXPLORER_IP
web:
image: btcpayserver/btcpayserver:1.6.12@sha256:41768be32374ebc4f64050ad5e56ffef8834ccacbff0440c0938a493abcec252
user: "1000:1000"
restart: on-failure
stop_grace_period: 1m
depends_on: [nbxplorer, postgres]
entrypoint: ["dotnet", "BTCPayServer.dll"]
volumes:
- ${APP_DATA_DIR}/data/btcpay:/data
- ${APP_DATA_DIR}/data/nbxplorer:/data/.nbxplorer
- ${APP_LIGHTNING_NODE_DATA_DIR}:/lnd:ro
environment:
HOME: "/data"
BTCPAY_DATADIR: "/data"
BTCPAY_PLUGINDIR: "/data/plugins"
BTCPAY_DOCKERDEPLOYMENT: "false"
BTCPAY_POSTGRES: "User ID=postgres;Host=$APP_BTCPAY_SERVER_DB_IP;Port=5432;Database=btcpayserver$APP_BITCOIN_NETWORK"
BTCPAY_NETWORK: "$APP_BITCOIN_NETWORK"
BTCPAY_BIND: 0.0.0.0:$APP_BTCPAY_SERVER_PORT
BTCPAY_CHAINS: "btc"
BTCPAY_BTCEXPLORERURL: "http://$APP_BTCPAY_SERVER_NBXPLORER_IP:32838"
BTCPAY_BTCLIGHTNING: "type=lnd-rest;server=https://$APP_LIGHTNING_NODE_IP:$APP_LIGHTNING_NODE_REST_PORT/;macaroonfilepath=/lnd/data/chain/bitcoin/$APP_BITCOIN_NETWORK/admin.macaroon;allowinsecure=true"
BTCPAY_SOCKSENDPOINT: $TOR_PROXY_IP:$TOR_PROXY_PORT
BTCPAY_EXPLORERPOSTGRES: User ID=postgres;Host=$APP_BTCPAY_SERVER_DB_IP;Port=5432;Application Name=nbxplorer;MaxPoolSize=20;Database=nbxplorer$APP_BITCOIN_NETWORK
networks:
default:
ipv4_address: $APP_BTCPAY_SERVER_IP
postgres:
image: btcpayserver/postgres:13.7@sha256:dadf0048895a888d88a2dd773dde2f5868c45f74ad37c6d208694df54b590531
# This needs to run as root for migrations to succeed
# user: "1000:1000"
restart: on-failure
# https://github.com/btcpayserver/btcpayserver-docker/commit/a65e7db6851092c75c5ac6c091a5f36ccc5fc26e
command: ["-c", "random_page_cost=1.0", "-c", "shared_preload_libraries=pg_stat_statements"]
stop_grace_period: 1m
environment:
POSTGRES_HOST_AUTH_METHOD: trust
volumes:
- ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data
networks:
default:
ipv4_address: $APP_BTCPAY_SERVER_DB_IP