version: "2.3" services: nextcloud: image: linuxserver/nextcloud:19.0.2-ls98 environment: - PUID={{ docker_user.id }} - PGID={{ docker_user.id }} - TZ=Europe/London volumes: - ./apps:/config/www/nextcloud/apps - ./config.php:/config/www/nextcloud/config/config.php - /srv/nextcloud-data/data:/data - /mnt/media:/content:ro restart: unless-stopped depends_on: - db - redis - collabora tmpfs: - /config/log labels: - traefik.enable=true - traefik.http.routers.nextcloud.rule=Host(`intersect.jakehoward.tech`) - traefik.http.routers.nextcloud.tls.certresolver=le - 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 db: image: postgres:12-alpine restart: unless-stopped volumes: - /srv/nextcloud-postgres:/var/lib/postgresql/data environment: - POSTGRES_PASSWORD=nextcloud - POSTGRES_USER=nextcloud db-backups: image: prodrigestivill/postgres-backup-local:12-alpine restart: unless-stopped volumes: - /mnt/scratch/db-backups:/backups depends_on: - db environment: - POSTGRES_HOST=db - POSTGRES_PASSWORD=nextcloud - POSTGRES_USER=nextcloud - POSTGRES_DB=nextcloud - BACKUP_KEEP_MONTHS=1 - BACKUP_KEEP_WEEKS=1 redis: image: redis:6-alpine restart: unless-stopped volumes: - ./redis:/data collabora: image: collabora/code:latest restart: unless-stopped cap_add: - MKNOD environment: - domain=intersect\\.jakehoward\\.tech labels: - traefik.enable=true - traefik.http.routers.collabora.rule=Host(`collabora.jakehoward.tech`) - traefik.http.routers.collabora.tls.certresolver=le - traefik.http.services.collabora-nextcloud.loadbalancer.server.scheme=https