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" appapi-dsp: image: ghcr.io/nextcloud/nextcloud-appapi-dsp:release networks: - nextcloud-exapps environment: - NC_HAPROXY_PASSWORD=${APPAPI_DSP_PASSWORD} volumes: - /var/run/docker.sock:/var/run/docker.sock privileged: true labels: net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/nextcloud-icon.png" folder.view3: "Nextcloud ExApps" app: image: nextcloud:33 container_name: nextcloud depends_on: - db - redis - appapi-dsp networks: - default - nextcloud-exapps - pangolin 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_DISABLE_REWRITE_IP=1 - APACHE_BODY_LIMIT=0 - TRUSTED_PROXIES=172.28.0.2 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" 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" pangolin.public-resources.nextcloud-server.targets[0].port: 80 # HOMEPAGE homepage.group: Cloud homepage.name: Nextcloud homepage.icon: nextcloud.png homepage.href: "https://${DOMAIN}" homepage.description: Files and collaboration nc-talk: container_name: nextcloud-hpb image: ghcr.io/nextcloud-releases/aio-talk:latest init: true networks: - default - pangolin ports: - 3478:3478/tcp - 3478:3478/udp environment: - NC_DOMAIN=${DOMAIN} - TALK_HOST=${TALK_HOST} - TURN_SECRET=${TURN_SECRET} - SIGNALING_SECRET=${SIGNALING_SECRET} - TZ=Europe/Vienna - TALK_PORT=3478 - INTERNAL_SECRET=${INTERNAL_SECRET} labels: net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/nextcloud-icon.png" folder.view3: "Infrastructure" pangolin.public-resources.nextcloud-hpb.name: "${HPB_RESOURCE_NAME}" pangolin.public-resources.nextcloud-hpb.full-domain: "${TALK_HOST}" pangolin.public-resources.nextcloud-hpb.protocol: "http" pangolin.public-resources.nextcloud-hpb.auth.sso-enabled: false pangolin.public-resources.nextcloud-hpb.targets[0].method: "http" pangolin.public-resources.nextcloud-hpb.targets[0].hostname: "nextcloud-hpb" pangolin.public-resources.nextcloud-hpb.targets[0].port: 8081 pangolin.public-resources.nextcloud-hpb-turn-tcp.name: "${HPB_RESOURCE_NAME} TURN TCP" pangolin.public-resources.nextcloud-hpb-turn-tcp.protocol: "tcp" pangolin.public-resources.nextcloud-hpb-turn-tcp.proxy-port: 3478 pangolin.public-resources.nextcloud-hpb-turn-tcp.targets[0].hostname: "nextcloud-hpb" pangolin.public-resources.nextcloud-hpb-turn-tcp.targets[0].port: 3478 pangolin.public-resources.nextcloud-hpb-turn-udp.name: "${HPB_RESOURCE_NAME} TURN UDP" pangolin.public-resources.nextcloud-hpb-turn-udp.protocol: "udp" pangolin.public-resources.nextcloud-hpb-turn-udp.proxy-port: 3478 pangolin.public-resources.nextcloud-hpb-turn-udp.targets[0].hostname: "nextcloud-hpb" pangolin.public-resources.nextcloud-hpb-turn-udp.targets[0].port: 3478 networks: nextcloud-exapps: name: nextcloud-exapps driver: bridge pangolin: name: pangolin_net external: true