100 lines
2.7 KiB
Text
100 lines
2.7 KiB
Text
|
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
|
||
|
######## 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"
|
||
|
######## 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=60
|
||
|
#- MF_DEBUG=1
|
||
|
image: quotengrote/miniflux-filter:latest
|
||
|
volumes:
|
||
|
- ./filter.txt:/data/filter.txt
|
||
|
networks:
|
||
|
- intern
|
||
|
######## 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
|
||
|
######## 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
|
||
|
|
||
|
######## Volumes ########
|
||
|
volumes:
|
||
|
db:
|
||
|
changedetection-data:
|
||
|
######## Networks ########
|
||
|
networks:
|
||
|
traefik:
|
||
|
external: true
|
||
|
intern:
|
||
|
driver: bridge
|