services: nextcloud_db: image: docker.io/library/postgres:17 restart: unless-stopped volumes: - ${NEXTCLOUD_POSTGRES_DATA_DIR}:/var/lib/postgresql/data environment: POSTGRES_DB: ${NEXTCLOUD_POSTGRES_DB} POSTGRES_USER: ${NEXTCLOUD_POSTGRES_USER} POSTGRES_PASSWORD: ${NEXTCLOUD_POSTGRES_PASSWORD} nextcloud: image: nextcloud:31.0.2 restart: always ports: - 8081:80 links: - db volumes: - ${NEXTCLOUD_DATA_DIR}:/var/www/html environment: - POSTGRES_HOST=nextcloud_db - POSTGRES_DB=${NEXTCLOUD_POSTGRES_DB} - POSTGRES_USER=${NEXTCLOUD_POSTGRES_USER} - POSTGRES_PASSWORD=${NEXTCLOUD_POSTGRES_PASSWORD} - NEXTCLOUD_TRUSTED_DOMAINS=${NEXTCLOUD_DOMAIN} cron: image: nextcloud:31.0.2 container_name: nextcloud-cron volumes: - ${NEXTCLOUD_DATA_DIR}:/var/www/html entrypoint: /cron.sh restart: unless-stopped nextcloud_redis: image: redis:7 restart: always collabora: container_name: nextcloud-collabora image: collabora/code:24.04.13.2.1 cap_add: - MKNOD environment: - domain=${COLLABORA_DOMAIN} - username=${COLLABORA_USER} - password=${COLLABORA_PASSWORD} ports: - "9980:9980" restart: always volumes: - "/etc/localtime:/etc/localtime:ro"