version: '3.8' services: nextcloud: image: nextcloud container_name: nextcloud links: - db volumes: - ./nextcloud:/var/www/html networks: - proxy - nextcloud depends_on: - db - traefik environment: - MYSQL_USER=nextcloud - MYSQL_PASSWORD= - MYSQL_DATABASE=nextcloud - MYSQL_HOST=db labels: ## Expose Nextcloud Through Trefik ## - "traefik.enable=true" # <== Enable traefik to proxy this container - "traefik.http.services.nextcloud.loadbalancer.server.port=80" - "traefik.http.routers.nextcloud.rule=Host(`nextcloud.luke-else.co.uk`) || Host(`www.nextcloud.luke-else.co.uk`)" - "traefik.http.routers.nextcloud.entrypoints=websecure" - "traefik.http.routers.nextcloud.tls.certresolver=myresolver" restart: unless-stopped db: image: mariadb container_name: nextclouddb command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW volumes: - ./db:/var/lib/mysql networks: - nextcloud environment: - MYSQL_ROOT_PASSWORD= - MYSQL_USER=nextcloud - MYSQL_PASSWORD= - MYSQL_DATABASE=nextcloud restart: unless-stopped networks: proxy: external: true nextcloud: name: nextcloud