Files
Validation-Ledger-Tx-Store-…/docker-compose.yml
2023-10-29 02:34:27 +02:00

62 lines
2.1 KiB
YAML

version: '3.4'
include:
- docker-compose.mainnet.yml
- docker-compose.testnet.yml
services:
nginx:
container_name: xpopweb
read_only: true
volumes:
- ./conf/nginx.conf:/etc/nginx/nginx.conf.template:ro
- ./conf/ssl:/etc/nginx/ssl:ro
- nginxcache:/var/cache/nginx
- nginxpid:/var/run
- ./store/:/usr/share/nginx/html:ro
ports:
- ${PORT:-3000}:${PORT:-3000}
- ${SSLPORT:-3443}:${SSLPORT:-3443}
- ${PORT_TESTNET:-3001}:${PORT_TESTNET:-3001}
- ${SSLPORT_TESTNET:-3444}:${SSLPORT_TESTNET:-3444}
image: nginx:alpine
environment:
- PUBLIC_PORT=${PORT:-3000}
- PUBLIC_PORT_TESTNET=${PORT_TESTNET:-3001}
- SSLPORT=${SSLPORT:-3443}
- SSLPORT_TESTNET=${SSLPORT_TESTNET:-3444}
restart: unless-stopped
healthcheck:
test: curl --fail http://localhost:3000/healthcheck || exit 1
interval: 15s
retries: 2
start_period: 5s
timeout: 5s
command: /bin/sh -c "envsubst '$$PUBLIC_PORT $$PUBLIC_PORT_TESTNET $$SSLPORT $$SSLPORT_TESTNET' < /etc/nginx/nginx.conf.template > /var/cache/nginx/conf ; nginx -c /var/cache/nginx/conf -g 'daemon off;'"
xpopcleaner:
container_name: xpopcleaner
image: alpine
entrypoint: sh -c "TTL_MINUTES_PREGEN_XPOP=${TTL_MINUTES_PREGEN_XPOP:-60} TTL_DAYS_XPOP_SOURCE_FILES=${TTL_DAYS_XPOP_SOURCE_FILES:-30} sh /cleanup.sh && tail -f /dev/null"
stop_grace_period: 0s
volumes:
- ./store:/store
- ./scripts/cleanup.sh:/cleanup.sh
restart: unless-stopped
healthcheck:
test: TTL_MINUTES_PREGEN_XPOP=${TTL_MINUTES_PREGEN_XPOP:-60} TTL_DAYS_XPOP_SOURCE_FILES=${TTL_DAYS_XPOP_SOURCE_FILES:-30} sh /cleanup.sh
interval: ${TTL_MINUTES_CLEANUP_INTERVAL:-60}m
retries: 10
timeout: 55m
volumes:
nginxcache:
nginxpid:
networks:
default:
enable_ipv6: true
ipam:
driver: default
config:
- subnet: 172.28.0.0/16
- subnet: "fd00:dead:beef::/48"