41 lines
1.4 KiB
YAML
41 lines
1.4 KiB
YAML
# wpide-server deployed behind Coolify's existing Traefik proxy.
|
|
# Traefik (coolify-proxy) auto-discovers this container via the labels below
|
|
# because it's attached to the external `coolify` network. HTTPS is issued by
|
|
# Coolify's `letsencrypt` cert resolver (HTTP-01 challenge on :80).
|
|
#
|
|
# Deploy: docker compose -f docker-compose.yml up -d --build
|
|
# Domain is set via the DOMAIN env var (defaults to api.qbirr.com).
|
|
|
|
services:
|
|
wpide-server:
|
|
build: .
|
|
image: wpide-server:latest
|
|
container_name: wpide-server
|
|
restart: unless-stopped
|
|
env_file: .env
|
|
volumes:
|
|
- wpide-data:/app/data
|
|
networks:
|
|
- coolify
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.docker.network=coolify
|
|
# --- HTTPS router ---
|
|
- "traefik.http.routers.wpide.rule=Host(`api.qbirr.com`)"
|
|
- traefik.http.routers.wpide.entrypoints=https
|
|
- traefik.http.routers.wpide.tls=true
|
|
- traefik.http.routers.wpide.tls.certresolver=letsencrypt
|
|
- traefik.http.services.wpide.loadbalancer.server.port=3017
|
|
# --- HTTP -> HTTPS redirect ---
|
|
- "traefik.http.routers.wpide-http.rule=Host(`api.qbirr.com`)"
|
|
- traefik.http.routers.wpide-http.entrypoints=http
|
|
- traefik.http.routers.wpide-http.middlewares=wpide-redirect
|
|
- traefik.http.middlewares.wpide-redirect.redirectscheme.scheme=https
|
|
|
|
volumes:
|
|
wpide-data:
|
|
|
|
networks:
|
|
coolify:
|
|
external: true
|