39 lines
1.4 KiB
YAML
39 lines
1.4 KiB
YAML
services:
|
|
semaphore:
|
|
image: semaphoreui/semaphore:v2.12.14
|
|
environment:
|
|
SEMAPHORE_DB_DIALECT: postgres
|
|
SEMAPHORE_DB_HOST: "db.${DOMAIN}"
|
|
SEMAPHORE_DB_NAME: semaphore
|
|
SEMAPHORE_DB_USER: ${DATABASE__USERNAME}
|
|
SEMAPHORE_DB_PASS: ${DATABASE__PASSWORD}
|
|
SEMAPHORE_ADMIN: admin
|
|
SEMAPHORE_ADMIN_PASSWORD: changeme
|
|
SEMAPHORE_ADMIN_NAME: Admin
|
|
SEMAPHORE_ADMIN_EMAIL: admin@localhost
|
|
SEMAPHORE_DB_OPTIONS: "{\"sslmode\":\"disable\"}"
|
|
ports:
|
|
- 3000:3000
|
|
volumes:
|
|
- semaphore_data:/var/lib/semaphore
|
|
- semaphore_config:/etc/semaphore
|
|
networks:
|
|
- traefik-public
|
|
deploy:
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.swarm.network=traefik-public
|
|
- traefik.constraint-label=traefik-public
|
|
- traefik.http.routers.semaphore.entrypoints=https
|
|
- traefik.http.routers.semaphore.rule=Host(`semaphore.${DOMAIN}`)
|
|
- traefik.http.routers.semaphore.tls.certresolver=le
|
|
- traefik.http.routers.semaphore.service=semaphore
|
|
- traefik.http.services.semaphore.loadbalancer.server.port=3000
|
|
|
|
networks:
|
|
traefik-public:
|
|
external: true
|
|
volumes:
|
|
semaphore_data:
|
|
semaphore_config:
|