mirror of
https://github.com/frappe/frappe_docker.git
synced 2026-06-24 00:35:10 +00:00
42 lines
1.6 KiB
YAML
42 lines
1.6 KiB
YAML
services:
|
|
frontend:
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.services.frontend.loadbalancer.server.port=8080
|
|
- traefik.http.routers.frontend-http.entrypoints=websecure
|
|
- traefik.http.routers.frontend-http.tls.certresolver=main-resolver
|
|
- traefik.http.routers.frontend-http.rule=Host(${SITES:?List of sites not set})
|
|
|
|
proxy:
|
|
image: traefik:v2.11
|
|
restart: unless-stopped
|
|
command:
|
|
- --providers.docker=true
|
|
- --providers.docker.exposedbydefault=false
|
|
|
|
# ADD file provider:
|
|
- --providers.file.directory=/dynamic
|
|
- --providers.file.watch=true
|
|
|
|
- --entrypoints.web.address=:80
|
|
- --entrypoints.web.http.redirections.entrypoint.to=websecure
|
|
- --entrypoints.web.http.redirections.entrypoint.scheme=https
|
|
- --entrypoints.websecure.address=:443
|
|
- --certificatesResolvers.main-resolver.acme.httpChallenge=true
|
|
- --certificatesResolvers.main-resolver.acme.httpChallenge.entrypoint=web
|
|
- --certificatesResolvers.main-resolver.acme.email=${LETSENCRYPT_EMAIL:?No Let's Encrypt email set}
|
|
- --certificatesResolvers.main-resolver.acme.storage=/letsencrypt/acme.json
|
|
ports:
|
|
- ${HTTP_PUBLISH_PORT:-80}:80
|
|
- ${HTTPS_PUBLISH_PORT:-443}:443
|
|
volumes:
|
|
- cert-data:/letsencrypt
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
# Mount a folder for dynamic rules:
|
|
- /opt/traefik/dynamic:/dynamic:ro
|
|
# Make "host.docker.internal" resolve to the host on Linux:
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
|
|
volumes:
|
|
cert-data:
|