move to owncloud
All checks were successful
Deploy Containers / Prepare (push) Successful in 1m54s

This commit is contained in:
2025-09-11 21:55:32 -04:00
parent 7f10dfa67a
commit 7261f29a7c
9 changed files with 368 additions and 370 deletions

93
tasks/owncloud.yml Normal file
View File

@@ -0,0 +1,93 @@
---
- name: Create folder structure
file:
path: "{{ item }}"
state: directory
with_items:
- "{{ data_dir }}/owncloud"
- "{{ data_dir }}/owncloud/data"
- "{{ data_dir }}/owncloud/db"
- "{{ data_dir }}/owncloud/redis"
- name: Create Owncloud Docker Network
docker_network:
name: owncloud
- name: Pull latest Owncloud Docker Image
docker_image:
name: owncloud/server
tag: "10.15"
source: pull
- name: Create Owncloud DB Docker Container
docker_container:
name: oc_database
image: mariadb:latest
restart_policy: unless-stopped
recreate: true
networks:
- name: owncloud
volumes:
- "{{ data_dir }}/owncloud/db:/var/lib/mysql"
env:
MYSQL_ROOT_PASSWORD: "{{ OWNCLOUD_DB_PASSWORD }}"
MYSQL_DATABASE: "owncloud"
MYSQL_USER: "owncloud"
MYSQL_PASSWORD: "{{ OWNCLOUD_DB_PASSWORD }}"
MARIADB_AUTO_UPGRADE: "1"
command: "--max-allowed-packet=128M --innodb-log-file-size=64M"
healthcheck:
test: "CMD mysqladmin ping -u root --password={{ OWNCLOUD_DB_PASSWORD }}"
interval: 10s
timeout: 5s
retries: 5
- name: Create Owncloud Redis Container
docker_container:
name: oc_redis
image: redis:latest
restart_policy: unless-stopped
recreate: true
networks:
- name: owncloud
command: "--databases 1"
healthcheck:
test: CMD redis-cli ping
interval: 10s
timeout: 5s
retries: 5
volumes:
- "{{ data_dir }}/owncloud/redis:/data"
- name: Create Owncloud Docker Container
docker_container:
name: owncloud
image: owncloud/server:10.15
restart_policy: unless-stopped
recreate: true
networks:
- name: "{{ docker_network_name }}"
- name: owncloud
volumes:
- "{{ data_dir }}/owncloud/data:/mnt/data"
env:
OWNCLOUD_DOMAIN: "{{ OWNCLOUD_APP_URL }}"
OWNCLOUD_TRUSTED_DOMAINS: "{{ OWNCLOUD_APP_URL }}"
OWNCLOUD_DB_TYPE: "mysql"
OWNCLOUD_DB_NAME: "owncloud"
OWNCLOUD_DB_USERNAME: "owncloud"
OWNCLOUD_DB_PASSWORD: "{{ OWNCLOUD_DB_PASSWORD }}"
OWNCLOUD_DB_HOST: "oc_database"
OWNCLOUD_ADMIN_USERNAME: "{{ OWNCLOUD_ADMIN_USERNAME }}"
OWNCLOUD_ADMIN_PASSWORD: "{{ OWNCLOUD_ADMIN_PASSWORD }}"
OWNCLOUD_MYSQL_UTF8MB4: "true"
OWNCLOUD_REDIS_ENBALED: "true"
OWNCLOUD_REDIS_HOST: "oc_redis"
labels:
traefik.enable: "true"
traefik.http.routers.nc.rule: Host(`{{ OWNCLOUD_APP_URL }}`)
traefik.http.routers.nc.entrypoints: webSecure
traefik.http.routers.nc.tls.certresolver: letsencrypt
traefik.http.services.nc.loadbalancer.server.port: "8080"
traefik.http.middlewares.limit.buffering.maxRequestBodyBytes: "1073741824"
traefik.http.routers.nc.middlewares: "limit"