services: miniflux: container_name: miniflux image: miniflux/miniflux:latest restart: unless-stopped environment: - BASE_URL=https://miniflux.bhasher.com - DATABASE_URL=${MINIFLUX_DATABASE_URL} - RUN_MIGRATIONS=1 - OAUTH2_PROVIDER=oidc - OAUTH2_CLIENT_ID=miniflux - OAUTH2_CLIENT_SECRET=${MINIFLUX_CLIENT_SECRET} - OAUTH2_REDIRECT_URL=https://miniflux.bhasher.com/oauth2/oidc/callback - OAUTH2_OIDC_DISCOVERY_ENDPOINT=https://idp.bhasher.com - OAUTH2_USER_CREATION=1 labels: - "traefik.enable=true" - "traefik.http.routers.miniflux.rule=Host(`miniflux.bhasher.com`)" - "traefik.http.routers.miniflux.service=miniflux-service" - "traefik.http.services.miniflux-service.loadbalancer.server.port=8080" - "traefik.http.routers.miniflux.tls=true" - "traefik.http.routers.miniflux.tls.certresolver=http" - "traefik.http.routers.miniflux.entrypoints=internalsecure" - "traefik.http.routers.minifluxshare.rule=Host(`miniflux.bhasher.com`) && (PathPrefix(`/share/`) || PathPrefix(`/stylesheets/`) || PathPrefix(`/icon/`))" - "traefik.http.routers.minifluxshare.service=minifluxshare-service" - "traefik.http.services.minifluxshare-service.loadbalancer.server.port=8080" - "traefik.http.routers.minifluxshare.tls=true" - "traefik.http.routers.minifluxshare.tls.certresolver=http" - "traefik.http.routers.minifluxshare.entrypoints=externalsecure" healthcheck: test: ["CMD", "/usr/bin/miniflux", "-healthcheck", "auto"] networks: - storage - external networks: storage: external: true external: external: true