Files
gesthub/docker-compose.yml
2025-05-13 21:42:04 +02:00

127 lines
2.6 KiB
YAML

services:
caddy:
image: caddy:latest
ports:
# - "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
depends_on:
- flask
- wekan
- mattermost
networks:
- gesthub
flask:
build: ./web
environment:
- DB_HOST=mariadb
- DB_USER=flaskuser
- DB_PASSWORD=flaskpass
- DB_NAME=flaskdb
depends_on:
- mariadb
volumes:
- ./web:/app
networks:
- gesthub
mariadb:
image: mariadb:latest
environment:
- MYSQL_ROOT_PASSWORD=rootpass
- MYSQL_DATABASE=flaskdb
- MYSQL_USER=flaskuser
- MYSQL_PASSWORD=flaskpass
volumes:
- mariadb_data:/var/lib/mysql
networks:
- gesthub
wekan:
image: wekanteam/wekan
environment:
- MONGO_URL=mongodb://mongo:27017/wekan
- ROOT_URL=https://wekan.gesthub
depends_on:
- mongo
networks:
- gesthub
mongo:
image: mongo:latest
volumes:
- mongo_data:/data/db
networks:
- gesthub
mattermost:
image: mattermost/mattermost-team-edition:latest
ports:
- "8065:8065"
environment:
- MM_SQLSETTINGS_DRIVERNAME=postgres
- MM_SQLSETTINGS_DATASOURCE=postgres://mmuser:mmuserpass@db:5432/mattermost?sslmode=disable
- MM_SERVICESETTINGS_SITEURL=http://chat.gesthub
depends_on:
- db
volumes:
- mattermost_data:/mattermost/data
networks:
- gesthub
db:
image: postgres:13
environment:
- POSTGRES_DB=mattermost
- POSTGRES_USER=mmuser
- POSTGRES_PASSWORD=mmuserpass
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- gesthub
keycloak:
image: quay.io/keycloak/keycloak:22.0.5
command: start-dev
environment:
- KEYCLOAK_ADMIN=admin
- KEYCLOAK_ADMIN_PASSWORD=admin
- KC_DB=postgres
- KC_DB_URL_HOST=keycloak-db
- KC_DB_URL_DATABASE=keycloak
- KC_DB_USERNAME=keycloak
- KC_DB_PASSWORD=keycloakpass
ports:
- "8080:8080"
depends_on:
- keycloak-db
volumes:
- keycloak_data:/opt/keycloak/data
networks:
- gesthub
keycloak-db:
image: postgres:13
environment:
- POSTGRES_DB=keycloak
- POSTGRES_USER=keycloak
- POSTGRES_PASSWORD=keycloakpass
volumes:
- keycloakdb_data:/var/lib/postgresql/data
networks:
- gesthub
networks:
gesthub:
driver: bridge
volumes:
caddy_data:
caddy_config:
mariadb_data:
mongo_data:
mattermost_data:
postgres_data:
keycloak_data:
keycloakdb_data: