homeserver/docker-compose/miniflux/docker-compose.yml.j2

114 lines
3.1 KiB
Text
Raw Normal View History

version: '3'
services:
######## Miniflux ########
miniflux:
container_name: "mf-frontend"
image: miniflux/miniflux:latest
restart: always
depends_on:
- db
environment:
- DATABASE_URL=postgres://miniflux:{{ lookup('keepass', 'miniflux_postgres_password', 'password') }}@mf-db/miniflux?sslmode=disable
- RUN_MIGRATIONS=1
# - CREATE_ADMIN=1
# - ADMIN_USERNAME=adminmf
# - ADMIN_PASSWORD={{ lookup('keepass', 'miniflux_admin_password', 'password') }}
- WORKER_POOL_SIZE=10
- POLLING_FREQUENCY=10
- CLEANUP_ARCHIVE_UNREAD_DAYS=-1
- CLEANUP_ARCHIVE_READ_DAYS=90
- TZ=Europe/Berlin
networks:
- intern
- traefik
labels:
- traefik.http.routers.miniflux.rule=Host(`miniflux.mgrote.net`)
- traefik.enable=true
- traefik.http.routers.miniflux.tls=true
- traefik.http.routers.miniflux.tls.certresolver=resolver_letsencrypt
- traefik.http.routers.miniflux.entrypoints=entry_https
- traefik.http.services.miniflux.loadbalancer.server.port=8080
- com.centurylinklabs.watchtower.enable=true
- com.centurylinklabs.watchtower.depends-on=mf-db
######## PostGreSQL ########
db:
container_name: "mf-db"
image: postgres:13
restart: always
environment:
- POSTGRES_USER=miniflux
- POSTGRES_PASSWORD={{ lookup('keepass', 'miniflux_postgres_password', 'password') }}
- TZ=Europe/Berlin
volumes:
- db:/var/lib/postgresql/data
networks:
- intern
labels:
- com.centurylinklabs.watchtower.enable=false
- com.centurylinklabs.watchtower.monitor-only=true
######## Miniflux-Filter ########
mf-filter:
container_name: mf-filter
restart: always
environment:
- TZ=Europe/Berlin
- MF_AUTH_TOKEN={{ lookup('keepass', 'miniflux_auth_token', 'password') }}
- MF_API_URL=https://miniflux.mgrote.net/v1
- MF_SLEEP=600
#- MF_DEBUG=1
image: quotengrote/miniflux-filter:latest
volumes:
- ./filter.txt:/data/filter.txt
networks:
- intern
labels:
- com.centurylinklabs.watchtower.enable=true
- com.centurylinklabs.watchtower.depends-on=mf-frontend
######## RSS-Bridge ########
rssbridge:
container_name: "mf-bridge"
image: rssbridge/rss-bridge:latest
restart: always
environment:
- TZ=Europe/Berlin
volumes:
- ./whitelist.txt:/app/whitelist.txt
networks:
- intern
ports: #um neue Feeds einzufügen
- 3001:80
labels:
- com.centurylinklabs.watchtower.enable=true
######## changedetection ########
changedetection.io:
image: ghcr.io/dgtlmoon/changedetection.io
container_name: mf-changedetection.io
hostname: changedetection.io
volumes:
- changedetection-data:/datastore
environment:
- PORT=5000
- BASE_URL=http://docker10.grote.lan:5000
ports:
- 5000:5000
restart: always
networks:
- intern
labels:
- com.centurylinklabs.watchtower.enable=true
######## Volumes ########
volumes:
db:
changedetection-data:
######## Networks ########
networks:
traefik:
external: true
intern:
driver: bridge