91 lines
3.1 KiB
Django/Jinja
91 lines
3.1 KiB
Django/Jinja
services:
|
|
db:
|
|
image: {{ seafile_db_image | default('mariadb:10.11') }}
|
|
container_name: seafile-mysql
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: {{ seafile_mysql_root_password | default('ROOT_PASSWORD') }}
|
|
MYSQL_USER: {{ seafile_mysql_db_user | default('seafile') }}
|
|
MYSQL_PASSWORD: {{ seafile_mysql_db_password | default('PASSWORD') }}
|
|
MYSQL_DATABASE: {{ seafile_mysql_db_name | default('seafile') }}
|
|
volumes:
|
|
- {{ seafile_mysql_volume | default('/opt/seafile-mysql/db') }}:/var/lib/mysql
|
|
networks:
|
|
- seafile-net
|
|
restart: unless-stopped
|
|
|
|
memcached:
|
|
image: {{ seafile_memcached_image | default('memcached:1.6.29') }}
|
|
container_name: seafile-memcached
|
|
entrypoint: memcached -m 256
|
|
networks:
|
|
- seafile-net
|
|
restart: unless-stopped
|
|
|
|
seafile:
|
|
image: {{ seafile_image | default('seafileltd/seafile-mc:12.0-latest') }}
|
|
container_name: seafile
|
|
environment:
|
|
- DB_HOST={{ seafile_mysql_db_host | default('db') }}
|
|
- DB_ROOT_PASSWD={{ seafile_mysql_root_password | default('ROOT_PASSWORD') }}
|
|
- TIME_ZONE={{ time_zone | default('Europe/Amsterdam') }}
|
|
- SEAFILE_ADMIN_EMAIL={{ seafile_admin_email | default('menno@vleeuwen.me') }}
|
|
- SEAFILE_ADMIN_PASSWORD={{ seafile_admin_password | default('WIP123') }}
|
|
- SEAFILE_SERVER_HOSTNAME={{ seafile_server_hostname | default('sf.mvl.sh') }}
|
|
- SEAFILE_SERVER_LETSENCRYPT=false
|
|
- SEADRIVE_SERVER_LETSENCRYPT=false
|
|
- SEAFILE_SERVER_PROTOCOL={{ seafile_server_protocol | default('http') }}
|
|
- JWT_PRIVATE_KEY={{ jwt_private_key | default('') }}
|
|
- ENABLE_SEADOC=false
|
|
volumes:
|
|
- {{ seafile_volume | default('/opt/seafile-data') }}:/shared
|
|
networks:
|
|
- seafile-net
|
|
- caddy_network
|
|
ports:
|
|
- 8001:80
|
|
- 8082:8082
|
|
- 8000:8000
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- db
|
|
- memcached
|
|
|
|
notification-server:
|
|
image: {{ notification_server_image | default('seafileltd/notification-server:12.0-latest') }}
|
|
container_name: notification-server
|
|
environment:
|
|
- DB_HOST={{ seafile_mysql_db_host | default('db') }}
|
|
- DB_ROOT_PASSWD={{ seafile_mysql_root_password | default('ROOT_PASSWORD') }}
|
|
- TIME_ZONE={{ time_zone | default('Europe/Amsterdam') }}
|
|
volumes:
|
|
- {{ notification_server_volume | default('/opt/notification-data') }}:/shared
|
|
- {{ seafile_volume | default('/opt/seafile-data') }}:/shared/seafile
|
|
networks:
|
|
- seafile-net
|
|
- caddy_network
|
|
depends_on:
|
|
- db
|
|
- seafile
|
|
restart: unless-stopped
|
|
|
|
onlyoffice:
|
|
image: onlyoffice/documentserver:8.3.1.1
|
|
restart: unless-stopped
|
|
environment:
|
|
- JWT_ENABLED=true
|
|
- JWT_SECRET={{ jwt_private_key | default('') }}
|
|
- WOPI_ENABLED=false
|
|
volumes:
|
|
- {{ seafile_data_dir }}/onlyoffice/logs:/var/log/onlyoffice
|
|
- {{ seafile_data_dir }}/onlyoffice/data:/var/www/onlyoffice/Data
|
|
- {{ seafile_data_dir }}/onlyoffice/lib:/var/lib/onlyoffice
|
|
networks:
|
|
- seafile-net
|
|
- caddy_network
|
|
|
|
networks:
|
|
seafile-net:
|
|
caddy_network:
|
|
external: true
|
|
name: caddy_default
|