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: