51 lines
1.5 KiB
YAML
51 lines
1.5 KiB
YAML
services:
|
|
miniflux:
|
|
image: miniflux/miniflux:latest
|
|
container_name: miniflux
|
|
restart: unless-stopped
|
|
depends_on:
|
|
miniflux-db:
|
|
condition: service_healthy
|
|
networks:
|
|
- proxy
|
|
- miniflux
|
|
environment:
|
|
- DATABASE_URL=postgres://miniflux:${MINIFLUX_POSTGRES_PASSWORD}@miniflux-db/miniflux?sslmode=disable
|
|
- RUN_MIGRATIONS=1
|
|
- OAUTH2_PROVIDER=oidc
|
|
- OAUTH2_CLIENT_ID=${MINIFLUX_OAUTH2_CLIENT_ID}
|
|
- OAUTH2_CLIENT_SECRET=${MINIFLUX_OAUTH2_CLIENT_SECRET}
|
|
- OAUTH2_REDIRECT_URL=https://${MINIFLUX_HOST}/oauth2/oidc/callback
|
|
- OAUTH2_OIDC_DISCOVERY_ENDPOINT=https://${MINIFLUX_OAUTH2_OIDC_DISCOVERY_ENDPOINT}
|
|
- OAUTH2_USER_CREATION=1
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.services.miniflux.loadbalancer.server.port=8080"
|
|
- "traefik.http.routers.miniflux.rule=Host(`${MINIFLUX_HOST}`)"
|
|
- "traefik.http.routers.miniflux.entrypoints=websecure"
|
|
- "traefik.http.routers.miniflux.tls.certresolver=le"
|
|
|
|
miniflux-db:
|
|
image: postgres:latest
|
|
container_name: miniflux-db
|
|
restart: unless-stopped
|
|
networks:
|
|
- miniflux
|
|
environment:
|
|
- POSTGRES_USER=miniflux
|
|
- POSTGRES_PASSWORD=${MINIFLUX_POSTGRES_PASSWORD}
|
|
- POSTGRES_DB=miniflux
|
|
volumes:
|
|
- ./data/miniflux-db:/var/lib/postgresql
|
|
healthcheck:
|
|
test: ["CMD", "pg_isready", "-U", "miniflux", "-d", "miniflux"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
networks:
|
|
proxy:
|
|
name: proxy
|
|
external: true
|
|
miniflux:
|
|
name: miniflux |