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: - "com.ghost.tel/stack-type=prod" - "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