services: nextcloud: image: lscr.io/linuxserver/nextcloud:30.0.4 environment: - PUID={{ docker_user.id }} - PGID={{ docker_user.id }} - TZ={{ timezone }} - DOCKER_MODS=theorangeone/lsio-mod-more-processes:latest volumes: - "{{ app_data_dir }}/nextcloud/apps:/config/www/nextcloud/apps" - "{{ app_data_dir }}/nextcloud/config:/config/www/nextcloud/config" - /mnt/tank/files/nextcloud:/data - /mnt/tank/files:/mnt/files restart: unless-stopped depends_on: - mariadb - redis tmpfs: - /config/log labels: - traefik.enable=true - traefik.http.routers.nextcloud.rule=Host(`intersect.jakehoward.tech`) - traefik.http.services.nextcloud-nextcloud.loadbalancer.server.port=443 - traefik.http.services.nextcloud-nextcloud.loadbalancer.server.scheme=https - traefik.http.middlewares.nextcloud-hsts.headers.stsseconds=15552000 - traefik.http.routers.nextcloud.middlewares=nextcloud-hsts@docker networks: - default - traefik collabora: image: collabora/code:latest restart: unless-stopped tty: true environment: - domain=intersect.jakehoward.tech labels: - traefik.enable=true - traefik.http.routers.collabora.rule=Host(`collabora.jakehoward.tech`) - traefik.http.services.collabora-nextcloud.loadbalancer.server.scheme=https networks: - default - traefik tmpfs: - /tmp mariadb: image: mariadb:10.6 restart: unless-stopped volumes: - /mnt/speed/dbs/mariadb/nextcloud:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=nextcloud - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud - MYSQL_PASSWORD=nextcloud redis: image: redis:7-alpine restart: unless-stopped volumes: - /mnt/speed/dbs/redis/nextcloud:/data networks: traefik: external: true