version: '3'
services:
nginx:
container_name: nginx
image: nginx:stable-alpine3.17-slim
ports:
- 8080:80
- 8443:443
volumes:
- ./nginx:/etc/nginx
- ./letsencrypt:/etc/letsencrypt
command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'"
extra_hosts:
- "host.docker.internal:host-gateway"
certbot:
image: "infinityofspace/certbot_dns_duckdns:latest"
container_name: "certbot"
volumes:
- "./letsencrypt:/etc/letsencrypt"
- "./logs:/var/log/letsencrypt"
command: certonly
--non-interactive
--agree-tos
--email {YOUR_EMAIL}
--preferred-challenges dns
--authenticator dns-duckdns
--dns-duckdns-token {YOUR_TOKEN}
--dns-duckdns-no-txt-restore
--dns-duckdns-propagation-seconds 15
-d "domain.duckdns.org"
-d "*.domain.duckdns.org"
docker-compose.yml GitHubPortainer в Docker