Files
docker/automation/docker-compose.yaml

102 lines
3.4 KiB
YAML

version: "3.9"
networks:
proxy:
external: true
internal:
external: true
volumes:
semaphore:
name: semaphore
mattermost:
name: mattermost
mattermost-config:
name: mattermost-config
mattermost-client-plugins:
name: mattermost-client-plugins
mattermost-plugins:
name: mattermost-plugins
mattermost-logs:
name: mattermost-logs
services:
semaphore:
image: ansiblesemaphore/semaphore
container_name: semaphore
environment:
SEMAPHORE_DB_USER: semaphore
SEMAPHORE_DB_PASS: Zk5FM#*9uAFzt6n6TGD!
SEMAPHORE_DB_HOST: mysql8
SEMAPHORE_DB_PORT: 3306
SEMAPHORE_DB: semaphore
SEMAPHORE_PLAYBOOKPATH: /tmp/semaphore/
SEMAPHORE_ADMIN_PASSWORD: secret
SEMAPHORE_ADMIN_NAME: Christian Steinle
SEMAPHORE_ADMIN_EMAIL: christiansteinle@arcor.de
SEMAPHORE_ADMIN: chris
SEMAPHORE_ACCESS_KEY_ENCRYPTION: /Rzt40/8gnKzYNDktdtDRZ8FVDJoF5y4Z1fETIylc7Y=
restart: unless-stopped
networks:
- proxy
- internal
volumes:
- semaphore:/home/semaphore:rw
labels:
- "traefik.enable=true"
- "traefik.http.routers.semaphore.entrypoints=web"
- "traefik.http.routers.semaphore.rule=Host(`semaphore.lan`)"
- "traefik.http.routers.semaphore.service=semaphore"
- "traefik.http.services.semaphore.loadbalancer.server.port=3000"
mattermost:
image: mattermost/mattermost-team-edition:6.3
container_name: mattermost
environment:
MM_USERNAME: mattermost
MM_PASSWORD: ^dyCW*Wxb6Ukba4^54EC
MM_DBNAME: mattermost
DB_HOST: psql14
DB_PORT_NUMBER: 5432
restart: unless-stopped
networks:
- proxy
- internal
volumes:
- mattermost:/mattermost/data
- mattermost-config:/mattermost/config:rw
- mattermost-client-plugins:/mattermost/client/plugins
- mattermost-plugins:/mattermost/plugins
- mattermost-logs:/mattermost/logs
labels:
- "traefik.enable=true"
- "traefik.http.routers.mattermost.entrypoints=web"
- "traefik.http.routers.mattermost.rule=Host(`cs-mm.ddnss.de`)"
- "traefik.http.routers.mattermost.middlewares=mattermost"
- "traefik.http.middlewares.mattermost.redirectscheme.scheme=https"
- "traefik.http.routers.mattermost-secure.entrypoints=websecure"
- "traefik.http.routers.mattermost-secure.rule=Host(`cs-mm.ddnss.de`)"
- "traefik.http.routers.mattermost-secure.service=mattermost-secure"
- "traefik.http.routers.mattermost-secure.tls=true"
- "traefik.http.routers.mattermost-secure.tls.certresolver=myresolver"
- "traefik.http.routers.mattermost-secure.tls.domains[0].main=cs-mm.ddnss.de"
- "traefik.http.services.mattermost-secure.loadbalancer.server.port=8065"
watchtower:
image: containrrr/watchtower
container_name: watchtower
restart: unless-stopped
networks:
- proxy
volumes:
- /etc/localtime:/etc/localtime:ro
- /var/run/docker.sock:/var/run/docker.sock
environment:
WATCHTOWER_INCLUDE_STOPPED: true
WATCHTOWER_MONITOR_ONLY: true
WATCHTOWER_SCHEDULE: "0 20 8 * * *"
WATCHTOWER_NOTIFICATIONS: "shoutrrr"
WATCHTOWER_NOTIFICATION_URL: "mattermost://watchtower@cs-mm.ddnss.de/og4ckuqet7fafb8kjuaigzuh7c"
WATCHTOWER_NOTIFICATION_TEMPLATE: "{{range .}}{{.Time.Format \"2006-01-02 15:04:05\"}} ({{.Level}}): {{.Message}}{{println}}{{end}}"