feat(deploy): docker-compose.yml with two-domain Traefik routing

This commit is contained in:
VolcanicCore
2026-08-27 13:28:43 +00:00
parent f6328b17f3
commit a0085cecb9
2 changed files with 33 additions and 0 deletions

1
.gitignore vendored
View File

@@ -45,3 +45,4 @@ Thumbs.db
.vscode/*
!.vscode/launch.json
!.vscode/tasks.json
deploy.json

32
docker-compose.yml Normal file
View File

@@ -0,0 +1,32 @@
# VolcanicCore — one container, two ports:
# - 8080 admin UI + REST + admin WebSocket (routed by Coolify's auto-emitted Traefik
# labels from docker_compose_domains → core.tes.gd)
# - 8081 NATS WebSocket listener for user apps (routed by the extra Traefik labels
# below → nats-core.tes.gd)
services:
app:
build:
context: .
dockerfile: Dockerfile
volumes:
- vc-data:/var/lib/volcaniccore
environment:
SERVICE_FQDN_APP_8080: ${SERVICE_FQDN_APP_8080}
ADMIN_PASSWORD: ${ADMIN_PASSWORD}
SESSION_SECRET: ${SESSION_SECRET}
expose:
- "8080"
- "8081"
labels:
- traefik.enable=true
- traefik.http.routers.vc-nats.entrypoints=https
- traefik.http.routers.vc-nats.rule=Host(`nats-core.tes.gd`)
- traefik.http.routers.vc-nats.tls=true
- traefik.http.routers.vc-nats.tls.certresolver=letsencrypt
- traefik.http.routers.vc-nats.service=vc-nats-svc
- traefik.http.services.vc-nats-svc.loadbalancer.server.port=8081
restart: unless-stopped
volumes:
vc-data:
driver: local