version: '3.8' services: seafile-server: image: ggogel/seafile-server:9.0.5 volumes: - seafile-data:/shared environment: - DB_HOST=db - DB_ROOT_PASSWD=db_dev - TIME_ZONE=Europe/Berlin - HTTPS=true - SEAFILE_SERVER_HOSTNAME=seafile.mydomain.com # Mandatory on first deployment! depends_on: - db - memcached - seafile-caddy networks: - seafile-net seahub: image: ggogel/seahub:9.0.5 volumes: - seafile-data:/shared - seahub-avatars:/shared/seafile/seahub-data/avatars - seahub-custom:/shared/seafile/seahub-data/custom environment: - SEAFILE_ADMIN_EMAIL=me@example.com - SEAFILE_ADMIN_PASSWORD=asecret depends_on: - seafile-server - seafile-caddy - seahub-media networks: - seafile-net seahub-media: image: ggogel/seahub-media:9.0.5 volumes: - seahub-avatars:/usr/share/caddy/media/avatars - seahub-custom:/usr/share/caddy/media/custom depends_on: - seafile-caddy networks: - seafile-net db: image: mariadb:10.7.3 environment: - MYSQL_ROOT_PASSWORD=db_dev - MYSQL_LOG_CONSOLE=true volumes: - seafile-mariadb:/var/lib/mysql networks: - seafile-net memcached: image: memcached:1.6.15 entrypoint: memcached -m 1024 networks: - seafile-net seafile-caddy: image: ggogel/seafile-caddy:1.0.6 ports: - "80:80" # Point your reverse proxy to port 80 of this service networks: - seafile-net - default networks: seafile-net: internal: true volumes: seafile-data: seafile-mariadb: seahub-avatars: seahub-custom: