infra/roles/owncloud/templates/docker-compose.yml.j2
2024-02-27 14:57:36 -05:00

81 lines
1.9 KiB
Django/Jinja

version: "3"
volumes:
mysql:
driver: local
redis:
driver: local
networks:
owncloud:
external: false
services:
owncloud:
image: owncloud/server:{{ owncloud_version }}
container_name: owncloud_server
restart: always
ports:
- "127.0.0.1:24734:8080"
depends_on:
- mariadb
- redis
environment:
- OWNCLOUD_DOMAIN={{ owncloud_domain }}
- OWNCLOUD_TRUSTED_DOMAINS={{ owncloud_trusted_domains }}
- OWNCLOUD_DB_TYPE=mysql
- OWNCLOUD_DB_NAME=owncloud
- OWNCLOUD_DB_USERNAME=owncloud
- OWNCLOUD_DB_PASSWORD=owncloud
- OWNCLOUD_DB_HOST=mariadb
- OWNCLOUD_ADMIN_USERNAME=admin
- OWNCLOUD_ADMIN_PASSWORD={{ owncloud_admin_password }}
- OWNCLOUD_MYSQL_UTF8MB4=true
- OWNCLOUD_REDIS_ENABLED=true
- OWNCLOUD_REDIS_HOST=redis
healthcheck:
test: ["CMD", "/usr/bin/healthcheck"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- {{ owncloud_mount }}:/mnt/data:rw
networks:
- owncloud
mariadb:
image: mariadb:10.11 # minimum required ownCloud version is 10.9
container_name: owncloud_mariadb
restart: always
environment:
- MYSQL_ROOT_PASSWORD=owncloud
- MYSQL_USER=owncloud
- MYSQL_PASSWORD=owncloud
- MYSQL_DATABASE=owncloud
- MARIADB_AUTO_UPGRADE=1
command: ["--max-allowed-packet=128M", "--innodb-log-file-size=64M"]
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-u", "root", "--password=owncloud"]
interval: 10s
timeout: 5s
retries: 5
volumes:
- mysql:/var/lib/mysql
networks:
- owncloud
redis:
image: redis:6
container_name: owncloud_redis
restart: always
command: ["--databases", "1"]
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
volumes:
- redis:/data
networks:
- owncloud