Files
cloudy/swarm/semaphore.yml
T

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: