Files
docker-compose/cloud/docker-compose.yml
T

92 lines
3.1 KiB
YAML

services:
db:
image: mariadb:10.6
container_name: nextcloud-db
command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
volumes:
- /mnt/user/appdata/nextcloud/db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/mariadb-icon.png"
folder.view3: "Databases"
redis:
image: redis
container_name: nextcloud-cache
volumes:
- /mnt/user/appdata/nextcloud/cache:/data
command: redis-server --requirepass ${REDIS_HOST_PASSWORD}
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/redis.png"
folder.view3: "Databases"
proxy:
image: caddy:latest
container_name: nextcloud-proxy
hostname: nextcloud-proxy
volumes:
- /mnt/user/appdata/nextcloud/proxy/Caddyfile:/etc/caddy/Caddyfile
depends_on:
- app
networks:
- default
- pangolin
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/nextcloud-icon.png"
net.unraid.docker.webui: "https://${DOMAIN}"
folder.view3: "Networking"
pangolin.public-resources.nextcloud-server.name: "${RESOURCE_NAME}"
pangolin.public-resources.nextcloud-server.full-domain: "${DOMAIN}"
pangolin.public-resources.nextcloud-server.protocol: "http"
pangolin.public-resources.nextcloud-server.auth.sso-enabled: false
pangolin.public-resources.nextcloud-server.targets[0].method: "http"
pangolin.public-resources.nextcloud-server.targets[0].hostname: "nextcloud-proxy"
pangolin.public-resources.nextcloud-server.targets[0].port: 8080
app:
image: nextcloud:34
container_name: nextcloud
depends_on:
- db
- redis
volumes:
- /mnt/user/appdata/nextcloud/app:/var/www/html
- /mnt/user/nextcloud-data:/var/www/html/data
environment:
- NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
- NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
- NEXTCLOUD_TRUSTED_DOMAINS=${DOMAIN}
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_HOST=db
- REDIS_HOST=redis
- REDIS_PORT=6379
- REDIS_HOST_PASSWORD=${REDIS_HOST_PASSWORD}
- APACHE_BODY_LIMIT=0
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/nextcloud-icon.png"
net.unraid.docker.webui: "https://${DOMAIN}"
folder.view3: "Services"
# HOMEPAGE
homepage.group: Cloud
homepage.name: Nextcloud
homepage.icon: nextcloud.png
homepage.href: "https://${DOMAIN}"
homepage.description: Files and collaboration
networks:
pangolin:
name: pangolin_net
external: true