services: miniflux: image: miniflux/miniflux:${MINIFLUX_VERSION} restart: unless-stopped depends_on: db: condition: service_healthy networks: - news - web environment: - DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db/${POSTGRES_DB}?sslmode=disable - RUN_MIGRATIONS=1 - CREATE_ADMIN=1 - ADMIN_USERNAME=${ADMIN_USER} - ADMIN_PASSWORD=${ADMIN_PASSWORD} - BASE_URL=https://news.${DOMAIN} - POLLING_FREQUENCY=15 # minutes # - LOG_LEVEL=debug healthcheck: test: ["CMD", "/usr/bin/miniflux", "-healthcheck", "auto"] labels: - "traefik.enable=true" - "traefik.http.routers.news.rule=Host(`news.${DOMAIN}`)" - "traefik.http.routers.news.entrypoints=websecure" - "traefik.http.routers.news.tls.certresolver=netcup" - "traefik.http.routers.news.tls.options=intermediate@file" - "traefik.http.services.news.loadbalancer.server.port=8080" - "docker.group=news" db: image: postgres:${POSTGRES_VERSION} restart: unless-stopped environment: - POSTGRES_USER=${POSTGRES_USER} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - POSTGRES_DB=${POSTGRES_DB} networks: - news volumes: - ${VOLUMES_PATH}/news/db:/var/lib/postgresql/data healthcheck: test: ["CMD", "pg_isready", "-U", "miniflux"] interval: 10s start_period: 30s labels: - "docker.group=news" networks: news: web: external: true