version: "3" services: app: image: "nextcloud" restart: "unless-stopped" environment: - "MYSQL_DATABASE=${DB_NAME}" - "MYSQL_USER=${DB_USER}" - "MYSQL_PASSWORD=${DB_PASSWORD}" - "MYSQL_HOST=db" volumes: - "./volumes/nextcloud:/var/www/html" - "${EXTERNAL_STORAGE_PATH_HOST}:${EXTERNAL_STORAGE_PATH_CONTAINER}" networks: - "internal" - "traefik" labels: - "traefik.enable=true" - "traefik.docker.network=${TRAEFIK_NETWORK}" - "traefik.http.routers.nextcloud.rule=Host(`${DOMAIN}`)" - "traefik.http.routers.nextcloud.entrypoints=web" db: image: "mariadb" restart: "unless-stopped" command: "--transaction-isolation=READ-COMMITTED --binlog-format=ROW" environment: - "MYSQL_DATABASE=${DB_NAME}" - "MYSQL_USER=${DB_USER}" - "MYSQL_PASSWORD=${DB_PASSWORD}" - "MYSQL_ROOT_PASSWORD=${DB_PASSWORD}" volumes: - "./volumes/db:/var/lib/mysql" networks: - "internal" networks: internal: traefik: name: "${TRAEFIK_NETWORK}" external: true