91e1d4470a
* add electrs * add user * change config * add electrs app * Apply suggestions from code review Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * make bitcoin volume read only * add required apps section --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
65 lines
2.5 KiB
YAML
65 lines
2.5 KiB
YAML
version: '3.9'
|
|
services:
|
|
electrs-ui:
|
|
container_name: electrs-ui
|
|
image: ghcr.io/montejojorge/electrs-ui:v0.9.2
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ${BITCOIND_DIR:-${APP_DATA_DIR}/../bitcoind/data}:/data/.bitcoin:ro
|
|
environment:
|
|
BITCOIND_DIR: /data/.bitcoin
|
|
ELECTRUM_LOCAL_DOMAIN: runtipi.home
|
|
ELECTRUM_IP_ADDRESS: ${INTERNAL_IP}
|
|
ELECTRS_HOST: electrs
|
|
BITCOIND_HOST: ${BITCOIND_HOST:-bitcoind}
|
|
ports:
|
|
- ${APP_PORT}:3006
|
|
networks:
|
|
- tipi_main_network
|
|
labels:
|
|
# Main
|
|
traefik.enable: true
|
|
traefik.http.middlewares.electrs-web-redirect.redirectscheme.scheme: https
|
|
traefik.http.services.electrs.loadbalancer.server.port: 3006
|
|
# Web
|
|
traefik.http.routers.electrs-insecure.rule: Host(`${APP_DOMAIN}`)
|
|
traefik.http.routers.electrs-insecure.entrypoints: web
|
|
traefik.http.routers.electrs-insecure.service: electrs
|
|
traefik.http.routers.electrs-insecure.middlewares: electrs-web-redirect
|
|
# Websecure
|
|
traefik.http.routers.electrs.rule: Host(`${APP_DOMAIN}`)
|
|
traefik.http.routers.electrs.entrypoints: websecure
|
|
traefik.http.routers.electrs.service: electrs
|
|
traefik.http.routers.electrs.tls.certresolver: myresolver
|
|
# Local domain
|
|
traefik.http.routers.electrs-local-insecure.rule: Host(`electrs.${LOCAL_DOMAIN}`)
|
|
traefik.http.routers.electrs-local-insecure.entrypoints: web
|
|
traefik.http.routers.electrs-local-insecure.service: electrs
|
|
traefik.http.routers.electrs-local-insecure.middlewares: electrs-web-redirect
|
|
# Local domain secure
|
|
traefik.http.routers.electrs-local.rule: Host(`electrs.${LOCAL_DOMAIN}`)
|
|
traefik.http.routers.electrs-local.entrypoints: websecure
|
|
traefik.http.routers.electrs-local.service: electrs
|
|
traefik.http.routers.electrs-local.tls: true
|
|
|
|
electrs:
|
|
container_name: electrs
|
|
image: getumbrel/electrs:v0.10.2
|
|
restart: unless-stopped
|
|
stop_grace_period: 15m
|
|
user: 0:0
|
|
volumes:
|
|
- ${BITCOIND_DIR:-${APP_DATA_DIR}/../bitcoind/data}:/data/.bitcoin:ro
|
|
- ${APP_DATA_DIR}/data:/data
|
|
ports:
|
|
- 50001:50001
|
|
environment:
|
|
- ELECTRS_COOKIE_FILE=/data/.bitcoin/.cookie
|
|
- ELECTRS_DB_DIR=/data/db
|
|
- ELECTRS_ELECTRUM_RPC_ADDR=0.0.0.0:50001
|
|
- ELECTRS_LOG_FILTERS=INFO
|
|
- ELECTRS_DAEMON_RPC_ADDR=${BITCOIND_HOST:-bitcoind}:8332
|
|
- ELECTRS_DAEMON_P2P_ADDR=${BITCOIND_HOST:-bitcoind}:8333
|
|
networks:
|
|
- tipi_main_network
|