All checks were successful
Deploy Containers / Prepare (push) Successful in 1m54s
94 lines
2.7 KiB
YAML
94 lines
2.7 KiB
YAML
---
|
|
- 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"
|