77 lines
2.6 KiB
YAML
77 lines
2.6 KiB
YAML
services:
|
|
rdesign-api:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: rdesign-api
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./templates:/app/templates
|
|
- ./output:/app/output
|
|
- ./jobs:/app/jobs
|
|
- ./scripts:/app/scripts
|
|
# Access rSwag designs for integration
|
|
- /opt/apps/rswag/designs:/app/rswag-designs:ro
|
|
environment:
|
|
- PYTHONUNBUFFERED=1
|
|
- BASE_URL=https://scribus.rspace.online
|
|
- RSWAG_DESIGNS_PATH=/app/rswag-designs
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.rdesign-api.rule=Host(`scribus.rspace.online`) && !PathPrefix(`/vnc`)"
|
|
- "traefik.http.routers.rdesign-api.entrypoints=websecure"
|
|
- "traefik.http.routers.rdesign-api.tls.certresolver=letsencrypt"
|
|
- "traefik.http.services.rdesign-api.loadbalancer.server.port=8080"
|
|
- "traefik.http.middlewares.rdesign-cors.headers.accesscontrolallowmethods=GET,POST,OPTIONS"
|
|
- "traefik.http.middlewares.rdesign-cors.headers.accesscontrolallowheaders=*"
|
|
- "traefik.http.middlewares.rdesign-cors.headers.accesscontrolalloworiginlist=https://scribus.rspace.online,https://rswag.online"
|
|
- "traefik.http.middlewares.rdesign-cors.headers.accesscontrolmaxage=86400"
|
|
- "traefik.http.routers.rdesign-api.middlewares=rdesign-cors"
|
|
networks:
|
|
- traefik-public
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
cpus: "4"
|
|
memory: 8G
|
|
reservations:
|
|
cpus: "1"
|
|
memory: 2G
|
|
|
|
rdesign-studio:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.studio
|
|
container_name: rdesign-studio
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./templates:/app/templates
|
|
- ./output:/app/output
|
|
- /opt/apps/rswag/designs:/app/rswag-designs:ro
|
|
environment:
|
|
- VNC_PASSWORD=changeme
|
|
- DISPLAY_WIDTH=1920
|
|
- DISPLAY_HEIGHT=1080
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.rdesign-studio.rule=Host(`scribus.rspace.online`) && PathPrefix(`/vnc`)"
|
|
- "traefik.http.routers.rdesign-studio.entrypoints=websecure"
|
|
- "traefik.http.routers.rdesign-studio.tls.certresolver=letsencrypt"
|
|
- "traefik.http.services.rdesign-studio.loadbalancer.server.port=6080"
|
|
- "traefik.http.routers.rdesign-studio.middlewares=rdesign-studio-strip"
|
|
- "traefik.http.middlewares.rdesign-studio-strip.stripprefix.prefixes=/vnc"
|
|
networks:
|
|
- traefik-public
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
cpus: "2"
|
|
memory: 4G
|
|
reservations:
|
|
cpus: "0.5"
|
|
memory: 1G
|
|
|
|
networks:
|
|
traefik-public:
|
|
external: true
|