45 lines
1.6 KiB
YAML
45 lines
1.6 KiB
YAML
|
version: '3.0'
|
||
|
|
||
|
services:
|
||
|
traefik:
|
||
|
container_name: traefik
|
||
|
image: traefik:latest
|
||
|
restart: unless-stopped
|
||
|
command:
|
||
|
#- --api.insecure=true
|
||
|
#- --api.dashboard=true
|
||
|
- --providers.docker=true
|
||
|
- --providers.docker.exposedByDefault=false
|
||
|
- --providers.docker.network=proxy
|
||
|
|
||
|
- --entryPoints.web.address=:80
|
||
|
- --entrypoints.web.http.redirections.entrypoint.to=websecure
|
||
|
- --entrypoints.web.http.redirections.entrypoint.scheme=https
|
||
|
- --entryPoints.websecure.address=:443
|
||
|
- --entryPoints.webfederation.address=:8448
|
||
|
|
||
|
- --certificatesresolvers.staging.acme.email={email}
|
||
|
- --certificatesresolvers.staging.acme.storage=/ssl-certs/acme.json
|
||
|
- --certificatesresolvers.staging.acme.caServer="https://acme-staging-v02.api.letsencrypt.org/directory"
|
||
|
- --certificatesresolvers.staging.acme.httpChallenge.entryPoint=web
|
||
|
|
||
|
- --certificatesresolvers.production.acme.email={email}
|
||
|
- --certificatesresolvers.production.acme.storage=/ssl-certs/acme.json
|
||
|
- --certificatesresolvers.production.acme.caServer="https://acme-v02.api.letsencrypt.org/directory"
|
||
|
- --certificatesresolvers.production.acme.httpChallenge.entryPoint=web
|
||
|
ports:
|
||
|
- "80:80"
|
||
|
- "443:443"
|
||
|
#- "8080:8080"
|
||
|
- "8448:8448"
|
||
|
networks:
|
||
|
proxy:
|
||
|
ipv4_address: 172.21.0.80
|
||
|
volumes:
|
||
|
- /etc/localtime:/etc/localtime:ro
|
||
|
- /opt/traefik/ssl-certs:/ssl-certs
|
||
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||
|
|
||
|
networks:
|
||
|
proxy:
|
||
|
external: true
|