Traefik v3 uses raw regex syntax instead of v2's {name:pattern} format.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
48 lines
1.4 KiB
YAML
48 lines
1.4 KiB
YAML
services:
|
|
web:
|
|
build: .
|
|
container_name: perilous-web
|
|
restart: unless-stopped
|
|
expose:
|
|
- "3000"
|
|
volumes:
|
|
- ./content:/usr/src/app/content
|
|
environment:
|
|
- EMAIL_PASSWORD=${PERILOUS_CODE_SERVER_PASSWORD}
|
|
networks:
|
|
- web
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.perilous.entrypoints=https"
|
|
- "traefik.http.routers.perilous.rule=Host(`perilous.dev`) || Host(`www.perilous.dev`) || HostRegexp(`^.+\\.perilous\\.dev$$`)"
|
|
- "traefik.http.routers.perilous.tls.certresolver=http"
|
|
- "traefik.http.services.perilous.loadbalancer.server.port=3000"
|
|
|
|
code-server:
|
|
image: lscr.io/linuxserver/code-server:latest
|
|
container_name: perilous-code-server
|
|
restart: unless-stopped
|
|
expose:
|
|
- "8443"
|
|
volumes:
|
|
- ./content:/home/project
|
|
- ./config:/config
|
|
environment:
|
|
- PASSWORD=${PERILOUS_CODE_SERVER_PASSWORD}
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- PROXY_DOMAIN=cs.perilous.dev
|
|
- DEFAULT_WORKSPACE=/home/project
|
|
networks:
|
|
- web
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.perilous-cs.entrypoints=https"
|
|
- "traefik.http.routers.perilous-cs.rule=Host(`cs.perilous.dev`)"
|
|
- "traefik.http.routers.perilous-cs.tls.certresolver=http"
|
|
- "traefik.http.services.perilous-cs.loadbalancer.server.port=8443"
|
|
|
|
networks:
|
|
web:
|
|
external: true
|