52 lines
1.7 KiB
YAML
52 lines
1.7 KiB
YAML
name: coolify-proxy
|
|
networks:
|
|
coolify:
|
|
external: true
|
|
services:
|
|
traefik:
|
|
container_name: coolify-proxy
|
|
image: 'traefik:v3.1'
|
|
restart: unless-stopped
|
|
extra_hosts:
|
|
- 'host.docker.internal:host-gateway'
|
|
networks:
|
|
- coolify
|
|
ports:
|
|
- '80:80'
|
|
- '443:443'
|
|
- '443:443/udp'
|
|
- '8080:8080'
|
|
healthcheck:
|
|
test: 'wget -qO- http://localhost:80/ping || exit 1'
|
|
interval: 4s
|
|
timeout: 2s
|
|
retries: 5
|
|
volumes:
|
|
- '/var/run/docker.sock:/var/run/docker.sock:ro'
|
|
- '/data/coolify/proxy/:/traefik'
|
|
command:
|
|
- '--ping=true'
|
|
- '--ping.entrypoint=http'
|
|
- '--api.dashboard=true'
|
|
- '--entrypoints.http.address=:80'
|
|
- '--entrypoints.https.address=:443'
|
|
- '--entrypoints.http.http.encodequerysemicolons=true'
|
|
- '--entryPoints.http.http2.maxConcurrentStreams=250'
|
|
- '--entrypoints.https.http.encodequerysemicolons=true'
|
|
- '--entryPoints.https.http2.maxConcurrentStreams=250'
|
|
- '--entrypoints.https.http3'
|
|
- '--providers.file.directory=/traefik/dynamic/'
|
|
- '--providers.file.watch=true'
|
|
- '--certificatesresolvers.letsencrypt.acme.httpchallenge=true'
|
|
- '--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=http'
|
|
- '--certificatesresolvers.letsencrypt.acme.storage=/traefik/acme.json'
|
|
- '--api.insecure=false'
|
|
- '--providers.docker=true'
|
|
- '--providers.docker.exposedbydefault=false'
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.traefik.entrypoints=http
|
|
- traefik.http.routers.traefik.service=api@internal
|
|
- traefik.http.services.traefik.loadbalancer.server.port=8080
|
|
- coolify.managed=true
|
|
- coolify.proxy=true |