89 lines
2.7 KiB
YAML
89 lines
2.7 KiB
YAML
version: "3"
|
|
|
|
services:
|
|
nginx:
|
|
restart: unless-stopped
|
|
image: nginx:1.25.3-bookworm
|
|
container_name: nginx
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
volumes:
|
|
- "nginx_conf:/etc/nginx/conf.d"
|
|
- "nginx_vhost:/etc/nginx/vhost.d"
|
|
- "nginx_html:/usr/share/nginx/html"
|
|
- "nginx_certs:/etc/nginx/certs:ro"
|
|
|
|
nginx-gen:
|
|
restart: unless-stopped
|
|
image: btcpayserver/docker-gen:0.10.7
|
|
container_name: nginx-gen
|
|
volumes:
|
|
- "/var/run/docker.sock:/tmp/docker.sock:ro"
|
|
- "./nginx.tmpl:/etc/docker-gen/templates/nginx.tmpl:ro"
|
|
- "nginx_conf:/etc/nginx/conf.d"
|
|
- "nginx_vhost:/etc/nginx/vhost.d"
|
|
- "nginx_html:/usr/share/nginx/html"
|
|
- "nginx_certs:/etc/nginx/certs:ro"
|
|
entrypoint: /usr/local/bin/docker-gen -notify-sighup nginx -watch -wait 5s:30s /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
|
|
links:
|
|
- nginx
|
|
|
|
letsencrypt-nginx-proxy-companion:
|
|
restart: unless-stopped
|
|
image: btcpayserver/letsencrypt-nginx-proxy-companion:2.2.9-2
|
|
container_name: letsencrypt-nginx-proxy-companion
|
|
volumes:
|
|
- "/var/run/docker.sock:/var/run/docker.sock:ro"
|
|
- "nginx_conf:/etc/nginx/conf.d"
|
|
- "nginx_vhost:/etc/nginx/vhost.d"
|
|
- "nginx_html:/usr/share/nginx/html"
|
|
- "nginx_certs:/etc/nginx/certs:rw"
|
|
- "acme:/etc/acme.sh"
|
|
environment:
|
|
NGINX_DOCKER_GEN_CONTAINER: "nginx-gen"
|
|
NGINX_PROXY_CONTAINER: "nginx"
|
|
ACME_CA_URI: ${ACME_CA_URI:-https://acme-v01.api.letsencrypt.org/directory}
|
|
links:
|
|
- nginx-gen
|
|
|
|
postgres:
|
|
restart: unless-stopped
|
|
image: postgres:17.6
|
|
command: [ "-c", "random_page_cost=1.0", "-c", "shared_preload_libraries=pg_stat_statements" ]
|
|
environment:
|
|
POSTGRES_HOST_AUTH_METHOD: trust
|
|
volumes:
|
|
- "postgres_datadir:/var/lib/postgresql/data"
|
|
|
|
plugin-builder:
|
|
restart: unless-stopped
|
|
image: btcpayserver/btcpayserver-plugin-builder:v1.0.67
|
|
environment:
|
|
XDG_CONFIG_HOME: /datadir
|
|
PB_POSTGRES: Application Name=plugin-builder;User ID=postgres;Host=postgres;Port=5432;Database=pluginbuilder
|
|
PB_STORAGE_CONNECTION_STRING: ${PB_STORAGE_CONNECTION_STRING}
|
|
PB_DEBUGLOG: debug.log
|
|
PB_DEBUGLOGLEVEL: Debug,
|
|
PB_DEBUGLOGRETAINCOUNT: 3
|
|
PB_ALLOWEDHOSTS: ${PB_HOST}
|
|
PB_GITHUB_TOKEN: ${PB_GITHUB_TOKEN}
|
|
VIRTUAL_HOST_NAME: pluginbuilder
|
|
VIRTUAL_HOST: ${PB_HOST}
|
|
VIRTUAL_PORT: 8080
|
|
LETSENCRYPT_HOST: ${PB_HOST}
|
|
expose:
|
|
- "8080"
|
|
volumes:
|
|
- "pluginbuilder_datadir:/datadir"
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
volumes:
|
|
nginx_conf:
|
|
nginx_vhost:
|
|
nginx_html:
|
|
nginx_certs:
|
|
postgres_datadir:
|
|
pluginbuilder_datadir:
|
|
acme:
|