services: db: image: postgres:18 restart: always env_file: - env_file environment: POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?} volumes: # Sans `/data` : postgres:18 a déplacé son PGDATA et déclare son volume # sur /var/lib/postgresql. - db:/var/lib/postgresql/ networks: - default labels: - backup.enable=true - backup.type=postgres nextcloud: image: nextcloud:33 restart: always hostname: nuage.aibertrand.fr depends_on: - db env_file: - env_file environment: POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?} NEXTCLOUD_ADMIN_PASSWORD: ${NEXTCLOUD_ADMIN_PASSWORD:?} volumes: - data:/var/www/html - ./php/override.ini:/usr/local/etc/php/conf.d/override.ini:ro networks: - default - traefik-proxy labels: - traefik.enable=true - traefik.docker.network=traefik-proxy - traefik.http.routers.aicloud.entrypoints=web-secure - traefik.http.routers.aicloud.rule=Host(`nuage.aibertrand.fr`) - traefik.http.routers.aicloud.tls.certresolver=letsencrypt - traefik.http.services.aicloud.loadbalancer.server.port=80 volumes: db: data: labels: - backup.enable=true networks: traefik-proxy: external: true