add RSS aggregator miniflux

This commit is contained in:
Pim Kunis 2023-01-17 21:14:57 +01:00
parent 64709cab98
commit 38f6eade56
7 changed files with 77 additions and 2 deletions

View file

@ -12,6 +12,7 @@
- {role: 'mastodon', tags: 'mastodon'}
- {role: 'seafile', tags: 'seafile'}
- {role: 'jitsi', tags: 'jitsi'}
- {role: 'miniflux', tags: 'miniflux'}
- name: Setup dataserver
hosts: dataserver
roles:

View file

@ -24,7 +24,7 @@ services:
- traefik.http.routers.forgejo.rule=Host(`git.pizzapim.nl`)
- traefik.http.routers.forgejo.tls=true
- traefik.http.routers.forgejo.tls.certresolver=pizzapim
- traefik.tcp.routers.forgejo-ssh.service=forgejo
- traefik.tcp.routers.forgejo.service=forgejo
- traefik.http.services.forgejo.loadbalancer.server.port=3000
- traefik.tcp.routers.forgejo-ssh.rule=HostSNI(`*`)

View file

@ -0,0 +1,4 @@
dependencies:
- role: common
- role: docker
- role: traefik

View file

@ -0,0 +1,17 @@
- name: Create app directory
file:
path: "{{ service_dir }}"
state: directory
- name: Copy Docker Compose script
template:
src: "{{ role_path }}/templates/docker-compose.yml.j2"
dest: "{{ service_dir }}/docker-compose.yml"
- name: Create data directory
file:
path: "{{ data_dir }}"
state: directory
- name: Start the Docker Compose
docker_compose:
project_src: "{{ service_dir }}"
pull: true
remove_orphans: true

View file

@ -0,0 +1,39 @@
version: '3.4'
services:
miniflux:
image: miniflux/miniflux:latest
container_name: miniflux-web
depends_on:
- db
environment:
- DATABASE_URL=postgres://{{ database_user }}:{{ database_password }}@db/miniflux?sslmode=disable
networks:
- default
- traefik
labels:
- traefik.http.routers.miniflux.entrypoints=websecure
- traefik.http.routers.miniflux.rule=Host(`rss.pizzapim.nl`)
- traefik.http.routers.miniflux.tls=true
- traefik.http.routers.miniflux.tls.certresolver=pizzapim
- traefik.tcp.routers.miniflux.service=miniflux
- traefik.http.services.miniflux.loadbalancer.server.port=8080
db:
image: postgres:15
container_name: miniflux_db
environment:
- POSTGRES_USER={{ database_user }}
- POSTGRES_PASSWORD={{ database_password }}
volumes:
- {{ data_dir }}:/var/lib/postgresql/data
healthcheck:
test: ["CMD", "pg_isready", "-U", "miniflux"]
interval: 10s
start_period: 30s
networks:
- default
networks:
traefik:
external: true

View file

@ -0,0 +1,13 @@
service_name: miniflux
service_dir: "{{ base_service_dir }}/{{ service_name }}"
data_dir: "{{ base_data_dir }}/{{ service_name }}"
database_user: miniflux
database_password: !vault |
$ANSIBLE_VAULT;1.1;AES256
61306531373964613837363565376137363538626632613564313266396231346233356130383531
3030336565333663643233303034336366326632386666650a303232373838353065333930643633
34326663363833303666666538386165613734303939343062376230366666346134626533396165
3837383263353264640a633865653865383866303431383762653363656133656135626238366539
64633732333230303339626234623534656463353232373234366161356364313566336637316339
6634373066326536393064643162663139323835303233333131

View file

@ -1,7 +1,7 @@
$ORIGIN pizzapim.nl.
$TTL 60
pizzapim.nl. IN SOA ns.pizzapim.nl. pim.kunis.nl. 2023011400 1800 3600 1209600 3600
pizzapim.nl. IN SOA ns.pizzapim.nl. pim.kunis.nl. 2023011700 1800 3600 1209600 3600
NS ns.pizzapim.nl.
NS ns0.transip.net.
@ -23,3 +23,4 @@ social IN CNAME www.pizzapim.nl.
dav IN CNAME www.pizzapim.nl.
git IN CNAME www.pizzapim.nl.
meet IN CNAME www.pizzapim.nl.
rss IN CNAME www.pizzapim.nl.