55 lines
1.9 KiB
Django/Jinja
55 lines
1.9 KiB
Django/Jinja
version: '2.0'
|
|
services:
|
|
db:
|
|
image: mariadb:10.5
|
|
container_name: seafile-mysql
|
|
restart: always
|
|
environment:
|
|
- MYSQL_ROOT_PASSWORD={{ db_root_passwd }} # Requested, set the root's password of MySQL service.
|
|
- MYSQL_LOG_CONSOLE=true
|
|
volumes:
|
|
- {{ data_dir }}/db:/var/lib/mysql # Requested, specifies the path to MySQL data persistent store.
|
|
networks:
|
|
- default
|
|
|
|
memcached:
|
|
image: memcached:1.6
|
|
container_name: seafile-memcached
|
|
restart: always
|
|
entrypoint: memcached -m 256
|
|
networks:
|
|
- default
|
|
|
|
seafile:
|
|
image: seafileltd/seafile-mc:9.0.10
|
|
container_name: seafile
|
|
restart: always
|
|
volumes:
|
|
- {{ data_dir }}/data:/shared # Requested, specifies the path to Seafile data persistent store.
|
|
environment:
|
|
- DB_HOST=db
|
|
- DB_ROOT_PASSWD={{ db_root_passwd }} # Requested, the value shuold be root's password of MySQL service.
|
|
- TIME_ZONE=Europe/Amsterdam
|
|
- SEAFILE_ADMIN_EMAIL={{ seafile_admin_email }} # Specifies Seafile admin user, default is 'me@example.com'.
|
|
- SEAFILE_ADMIN_PASSWORD={{ seafile_admin_password }} # Specifies Seafile admin password.
|
|
- SEAFILE_SERVER_LETSENCRYPT=false # Whether to use https or not.
|
|
- SEAFILE_SERVER_HOSTNAME={{ seafile_domain }} # Specifies your host name if https is enabled.
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.seafile.entrypoints=websecure
|
|
- traefik.http.routers.seafile.rule=Host(`files.geokunis2.nl`)
|
|
- traefik.http.routers.seafile.tls=true
|
|
- traefik.http.routers.seafile.tls.certresolver=letsencrypt
|
|
- traefik.http.services.seafile.loadbalancer.server.port=80
|
|
- traefik.http.routers.seafile.service=seafile
|
|
- traefik.docker.network=traefik
|
|
depends_on:
|
|
- db
|
|
- memcached
|
|
networks:
|
|
- default
|
|
- traefik
|
|
|
|
networks:
|
|
traefik:
|
|
external: true
|