Files
homelab/stacks/mattermost/docker-compose.yaml

68 lines
2.3 KiB
YAML

services:
app:
image: mattermost/mattermost-enterprise-edition:11.5.1@sha256:816d2fe91fd3e605fd8cc4d1756974da496acc8735528f81203554d7563e9f9e
platform: linux/amd64
container_name: mattermost
restart: unless-stopped
entrypoint: ["/bin/sh", "-c"]
command:
- |
export MM_SQLSETTINGS_DATASOURCE="postgres://mattermost:$$(cat /run/secrets/mattermost_postgres_password)@postgres:5432/mattermost?sslmode=disable"
export MM_OPENIDCONNECTSETTINGS_SECRET="$$(cat /run/secrets/mattermost_oidc_secret)"
exec /entrypoint.sh mattermost
environment:
MM_SQLSETTINGS_DRIVERNAME: postgres
MM_BLEVESETTINGS_INDEXDIR: /mattermost/bleve-indexes
MM_OPENIDCONNECTSETTINGS_ENABLE: "true"
MM_OPENIDCONNECTSETTINGS_ID: ${MATTERMOST_OIDC_CLIENT_ID}
MM_OPENIDCONNECTSETTINGS_DISCOVERYENDPOINT: ${MATTERMOST_OIDC_DISCOVERY_URL}
MM_OPENIDCONNECTSETTINGS_BUTTONTEXT: Login with Authentik
MM_EMAILSETTINGS_ENABLESIGNINWITHEMAIL: "false"
volumes:
- mattermost_data:/mattermost/data
- mattermost_logs:/mattermost/logs
- mattermost_config:/mattermost/config
- mattermost_plugins:/mattermost/plugins
- mattermost_client_plugins:/mattermost/client/plugins
- mattermost_bleve:/mattermost/bleve-indexes
networks:
- homelab_apps
- homelab_db
secrets:
- mattermost_postgres_password
- mattermost_oidc_secret
labels:
- traefik.enable=true
- traefik.docker.network=homelab_apps
- traefik.http.routers.mattermost.rule=Host(`${MATTERMOST_DOMAIN}`)
- traefik.http.routers.mattermost.entrypoints=websecure
- traefik.http.routers.mattermost.tls=true
- traefik.http.routers.mattermost.tls.certresolver=le
- traefik.http.services.mattermost.loadbalancer.server.port=8065
volumes:
mattermost_data:
driver: local
mattermost_logs:
driver: local
mattermost_config:
driver: local
mattermost_plugins:
driver: local
mattermost_client_plugins:
driver: local
mattermost_bleve:
driver: local
networks:
homelab_apps:
external: true
homelab_db:
external: true
secrets:
mattermost_postgres_password:
environment: MATTERMOST_POSTGRES_PASSWORD
mattermost_oidc_secret:
environment: MATTERMOST_OIDC_CLIENT_SECRET