diff --git a/owncloud/.env.sample b/owncloud/.env.sample new file mode 100644 index 0000000..f3b8ee7 --- /dev/null +++ b/owncloud/.env.sample @@ -0,0 +1,4 @@ +OWNCLOUD_DOMAIN=owncloud.domain.de +OWNCLOUD_TRUSTED_DOMAINS=owncloud.domain.de +ADMIN_USERNAME=ChangeMe +ADMIN_PASSWORD=ChangeMe diff --git a/owncloud/docker-compose.yml b/owncloud/docker-compose.yml new file mode 100644 index 0000000..14086e4 --- /dev/null +++ b/owncloud/docker-compose.yml @@ -0,0 +1,64 @@ +version: "3" + +services: + owncloud: + image: owncloud/server + container_name: owncloud_server + restart: always + ports: + - 8013: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_USERNAME} + - OWNCLOUD_ADMIN_PASSWORD=${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: + - ./files:/mnt/data + + + mariadb: + image: mariadb:10.6 # 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 + 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 + + 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 \ No newline at end of file