version: "3" services: nextcloud: image: nextcloud:apache container_name: nextcloud restart: always ports: - "1869:80" networks: - nextcloud - postgres - proxy volumes: - /docker/nextcloud:/var/www/html - /mnt/Storage/Nextcloud:/var/www/html/data - /mnt/Storage/Syncthing:/Syncthing - /mnt/Storage/Media/Music:/Music - /etc/localtime:/etc/localtime:ro environment: - TZ=Europe/Helsinki - REDIS_HOST=redis - REDIS_HOST_PASSWORD=123 depends_on: - redis labels: - "traefik.enable=true" - "traefik.http.routers.nextcloud-redirect.entrypoints=http" - "traefik.http.routers.nextcloud-redirect.rule=Host(`cloud.korhonen.cc`)" - "traefik.http.middlewares.http2https.redirectscheme.scheme=https" - "traefik.http.routers.nextcloud-redirect.middlewares=http2https" - "traefik.http.routers.nextcloud.entrypoints=https" - "traefik.http.routers.nextcloud.rule=Host(`cloud.korhonen.cc`)" - "traefik.http.routers.nextcloud.tls=true" - "traefik.http.routers.nextcloud.tls.certresolver=http" - "traefik.http.routers.nextcloud.service=nextcloud" - "traefik.docker.network=proxy" - "traefik.http.services.nextcloud.loadbalancer.server.port=80" redis: image: redis:alpine container_name: redis networks: - nextcloud restart: always command: redis-server --requirepass 123 cron: image: nextcloud:apache container_name: cron restart: always volumes: - /docker/nextcloud:/var/www/html entrypoint: /cron.sh depends_on: - redis coturn: image: instrumentisto/coturn container_name: coturn restart: unless-stopped env_file: .env ports: - "3478:3478/tcp" - "3478:3478/udp" networks: - nextcloud command: - -n - --log-file=stdout - --min-port=49160 - --max-port=49200 - --realm=cloud.korhonen.cc - --use-auth-secret - --static-auth-secret=${STATIC_AUTH_SECRET} networks: nextcloud: external: false postgres: external: true proxy: external: true