version: '3.7' volumes: nextcloud-db: name: docker_nextcloud-db-23 nextcloud-data: name: docker_nextcloud nextcloud: name: docker_nextcloud-conf networks: nextcloud: proxy: external: true services: nextcloud-app: image: nextcloud-cron:23.0.6 container_name: nextcloud-app restart: unless-stopped extra_hosts : code.oasis21.org : 172.16.7.10 volumes: - nextcloud:/var/www/html - nextcloud-data:/var/www/html/data environment: - "TZ=Europe/Paris" - REDIS_HOST=redis env_file: ./secrets/librezo.secrets depends_on: - nextcloud-db - redis networks: - nextcloud - proxy restart: unless-stopped labels: traefik.http.routers.nextcloud-web.entrypoints: websecure traefik.http.routers.nextcloud-web.rule: Host(`cloud.oasis21.org`) traefik.http.services.nextcloud-web.loadbalancer.server.port: 80 traefik.enable: true # https://docs.nextcloud.com/server/16/admin_manual/configuration_server/reverse_proxy_configuration.html traefik.http.routers.nextcloud-web.middlewares: nextcloud-web@docker traefik.http.middlewares.nextcloud-web.redirectregex.permanent: true traefik.http.middlewares.nextcloud-web.redirectregex.regex: "https://(.*)/.well-known/(card|cal)dav" traefik.http.middlewares.nextcloud-web.redirectregex.replacement: "https://$${1}/remote.php/dav/" restart: unless-stopped redis: image: redis image: 'bitnami/redis:latest' container_name: redis environment: - "TZ=Europe/Paris" - ALLOW_EMPTY_PASSWORD=yes env_file: ./secrets/librezo.secrets networks: - nextcloud nextcloud-db: image: postgres:11 container_name: nextcloud-db volumes: - nextcloud-db:/var/lib/postgresql/data networks: - nextcloud env_file: ./secrets/librezo.secrets environment: - "TZ=Europe/Paris" restart: unless-stopped collabora: image: collabora/code:22.05.3.1.1 container_name: collabora extra_hosts : cloud.oasis21.org : 172.16.7.10 environment: - "TZ=Europe/Paris" - aliasgroup1=cloud.oasis21.org - DONT_GEN_SSL_CERT=1 - serveur_name=code.oasis21.org - "extra_params=--o:ssl.enable=false --o:ssl.termination=true" networks: - nextcloud - proxy env_file: ./secrets/librezo.secrets cap_add: - MKNOD restart: unless-stopped labels: traefik.http.routers.collabora.entrypoints: websecure traefik.http.routers.collabora.rule: Host(`code.oasis21.org`) traefik.http.services.collabora.loadbalancer.server.port: 9980 traefik.enable: true