version: '3.8' 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 flask: build: ./web environment: - DB_HOST=mariadb - DB_USER=flaskuser - DB_PASSWORD=flaskpass - DB_NAME=flaskdb depends_on: - mariadb volumes: - ./web:/app mariadb: image: mariadb:latest environment: - MYSQL_ROOT_PASSWORD=rootpass - MYSQL_DATABASE=flaskdb - MYSQL_USER=flaskuser - MYSQL_PASSWORD=flaskpass volumes: - mariadb_data:/var/lib/mysql wekan: image: wekanteam/wekan environment: - MONGO_URL=mongodb://mongo:27017/wekan - ROOT_URL=https://wekan.gesthub depends_on: - mongo mongo: image: mongo:latest volumes: - mongo_data:/data/db 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 db: image: postgres:13 environment: - POSTGRES_DB=mattermost - POSTGRES_USER=mmuser - POSTGRES_PASSWORD=mmuserpass volumes: - postgres_data:/var/lib/postgresql/data volumes: caddy_data: caddy_config: mariadb_data: mongo_data: mattermost_data: postgres_data: