1
0

Miniflux: install and configure rss reader

This commit is contained in:
2025-06-28 12:12:19 +03:00
parent 99b6959c84
commit c568f00db1
10 changed files with 4047 additions and 3842 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,36 +1,37 @@
$ANSIBLE_VAULT;1.1;AES256
62333333383237396435306539366633646534333231666238326561306439316632383862646132
3938353633633131396535333764396238356561373739630a353662343534383761383132373530
31343032633261636136313562333331336531386165313264363536363866653562303131313831
6632346465646231360a363264653964633738323637323130366264643639633965636632623933
64383734623763303330313231316535646635646232386663613833653337396538623363303838
30656263346165643632646662363865373531336339393435383935363333393764373664373630
33303435303530656432326634623034616633326432613361333236663661393035623961613035
39376339393935626637316461636263333666616261646661316631376365356562633063636665
63626362336632393235333838313933353637393064616562333235656232613162636631343962
37623930666534373437353231353631333430363865333937356666313062336630396538333832
35353032333461616635616561656330626664306565313462656532393035353439366437336332
37363732373961386533323633323330626533383438663466313438636662343064306236396163
31383430643233393939656631646538663833336239323564363563356234306534343465316466
61333534363862376539626639353634343234623061316265333763633362336336316534643236
61303862386161346533386233303335333136653836666633363738643030633262313232336136
38363561376464313066373631356262626234653464356330646666336536623032333634613863
32303731396365646138343132623534336366633036623231386439376133656235633035663964
36366130633331353464643264383231306639326133633464306638653139666563636563343539
65383261396537383438646237633737343236666662633664346332383264646537643535376638
66653639633762356566306435383039326630373431343935383766303338363438643135616563
33613837613461343036363365356336336631663230326235623965663133336263636636333735
64646162326566643536323165363531633330373536656531666334336364313231393234333631
38363630653439393065316662306463333563323339313438366238653865653265363535616630
64613031653831616666666533346134656630646337633661623163653731656231363232663763
61386566356635663561356264633462643265643361343535303365396537363134303438393234
34633037356162663933396339373932303138633165323438643230666434363666313361386530
38623463663237363335316363333631616133363336326333346436376462663839303961643462
61396433383966356635613663636663383264666165373137346234646236623339323738303263
63623739303037386363623739623034623435643534353765656535323134656263633066313735
35646338613530663633366437353563636364393063386237316265386538616137343735363333
61376434303037323236323761376235633631633036653639333862636466653337303662663234
30613362386338663531616261386265616131356535346437326436326638346636343666303431
63313638313739623761333665616434356561653031666430623530363539626661646638316637
35393531363863333737303865323765636633633633623032353061373838376564393136336662
643366643665653265323065373536653536
33323463653739626134366261626263396338333966376262313263613131343962326432613263
6430616564313432666436376432383539626231616438330a646161313364353566373833353337
64633361306564646564663736663937303435356332316432666135353863393439663235646462
3136303031383835390a396531366636386133656366653835633833633733326561383066656464
31613933333731643065316130303561383563626636346633396266346332653234373732326535
39663765353938333835646563663633393835633163323435303164663261303661666435306239
34353264633736383565306336633565376436646536623835613330393466363935303031346664
63626465656435383162633761333131393934666632336539386435613362353135383538643836
66373261306139353134393839333539366531393163393266386531613732366431663865343134
64363933616338663966353431396133316561653366396130653232636561343739336265386339
38646238653436663531633465616164303633356233363433623038666465326339656238653233
36323162303233633935646132353835336364303833636563346535316166346533636536656665
64323030616665316133363739393364306462316135636630613262646436643062373138656431
35663334616239623534383564643738616264373762663034376332323637626337306639653830
65386339666465343931303933663561643664313364386662656663643336636264636333666435
66366531613538363233346137383462326334306534333564636232393931393433386664363036
39623134636331646536323531653063326231613363366562643561353939633062663132303035
38303265326136303633666566613966636133666336396133333033643434303138303065666463
36643765316134636133333937396332613233383932663265386264623133633364646237346465
32623965653662336335366639643765393636623236323036396538353666646132393636663536
65646638643236313762373135336430643731643961386264303134366633353934366431333430
34313362633836613166336437323835626537653237666139383230663835626630623933383834
32636136663830643661363663303136393733646133626538333836666135653936323832336433
64396234396430326334656561393264366263313730306631383037643135613765373861356561
37363933383238316232336564363364376637626630373963666262376165343838303530653764
64343937666365646666363939383662313334656236326566373565643637313434616261616635
35646131396432623534396133666239613036386332663038353531313935636139363136666562
62616234663935383262626235313337623332333733383035666633393965336535316234323561
37353563623138343339616565653465633633383563636631356333303435376536393634343031
63653062303432366230643333353634383061313135616533643935316263393366653335353964
36363135356365373064613338393261326265396330323930613538326330663532616163666564
39313631633434353938626637626462376139383536306531633733646331303030333238373161
36336364383939663132366461383264346631366566363638333738386235623264623331343738
34316436393363323165396430343163653837623035626236313663643038336666633535666462
33323566353062653964643362363233346264396365336637376661323730336437333031363830
38303962646561346262

View File

@ -18,9 +18,14 @@ echo "Backup: perform gramps backup"
su --login gramps --command '/home/gramps/backup.sh'
echo "Backup: perform miniflux backup"
su --login miniflux --command '/home/miniflux/backup.sh'
echo "Backup: send backups to remote storage with retic"
restic-shell.sh backup --verbose /home/gitea/backups /home/outline/backups /home/gramps/backups \
restic-shell.sh backup --verbose /home/gitea/backups /home/outline/backups /home/gramps/backups /home/miniflux/backups \
&& restic-shell.sh check \
&& restic-shell.sh forget --compact --prune --keep-daily 90 --keep-monthly 36 \
&& restic-shell.sh check

View File

@ -64,3 +64,11 @@ gramps.vakhrushev.me {
}
}
miniflux.vakhrushev.me {
tls anwinged@ya.ru
reverse_proxy {
to miniflux_app:8080
}
}
}

View File

@ -0,0 +1,25 @@
#!/usr/bin/env bash
set -eu
set -o pipefail
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="miniflux_postgres_${TIMESTAMP}.sql.gz"
echo "miniflux: backing up postgresql database"
docker compose --file "{{ base_dir }}/docker-compose.yml" exec \
miniflux_postgres \
pg_dump \
-U "{{ miniflux_postgres_user }}" \
"{{ miniflux_postgres_database }}" \
| gzip > "{{ postgres_backups_dir }}/${BACKUP_FILE}"
echo "miniflux: PostgreSQL backup saved to {{ postgres_backups_dir }}/${BACKUP_FILE}"
echo "miniflux: removing old backups"
# Keep only the 3 most recent backups
keep-files.py "{{ postgres_backups_dir }}" --keep 3
echo "miniflux: backup completed successfully."

View File

@ -0,0 +1,52 @@
# See sample https://miniflux.app/docs/docker.html#docker-compose
# See env https://miniflux.app/docs/configuration.html
services:
miniflux_app:
image: miniflux/miniflux:2.2.10
container_name: miniflux_app
depends_on:
miniflux_postgres:
condition: service_healthy
networks:
- "miniflux_network"
- "{{ web_proxy_network }}"
environment:
- DATABASE_URL=postgres://{{ miniflux_postgres_user }}:{{ miniflux_postgres_password }}@miniflux_postgres/{{ miniflux_postgres_database }}?sslmode=disable
- RUN_MIGRATIONS=1
- CREATE_ADMIN=1
- ADMIN_USERNAME={{ miniflux_admin_user }}
- ADMIN_PASSWORD={{ miniflux_admin_password }}
- BASE_URL=https://miniflux.vakhrushev.me
- DISABLE_LOCAL_AUTH=1
- OAUTH2_OIDC_DISCOVERY_ENDPOINT=https://auth.vakhrushev.me
- OAUTH2_CLIENT_ID={{ miniflux_oidc_client_id }}
- OAUTH2_CLIENT_SECRET={{ miniflux_oidc_client_secret }}
- OAUTH2_OIDC_PROVIDER_NAME=Authelia
- OAUTH2_PROVIDER=oidc
- OAUTH2_REDIRECT_URL=https://miniflux.vakhrushev.me/oauth2/oidc/callback
- OAUTH2_USER_CREATION=1
- METRICS_COLLECTOR=1
- METRICS_ALLOWED_NETWORKS=0.0.0.0/0
miniflux_postgres:
image: postgres:16.3-bookworm
container_name: miniflux_postgres
environment:
- POSTGRES_USER={{ miniflux_postgres_user }}
- POSTGRES_PASSWORD={{ miniflux_postgres_password }}
- POSTGRES_DB={{ miniflux_postgres_database }}
networks:
- "miniflux_network"
volumes:
- {{ postgres_data_dir }}:/var/lib/postgresql/data
healthcheck:
test: ["CMD", "pg_isready", "-U", "miniflux"]
interval: 10s
start_period: 30s
networks:
miniflux_network:
driver: bridge
{{ web_proxy_network }}:
external: true

View File

@ -14,3 +14,9 @@ jobs:
selector:
allow:
- "authelia_*"
- name: miniflux
url: http://miniflux_app:8080/metrics
selector:
allow:
- "miniflux_*"