2022-03-19 09:42:09 +01:00
|
|
|
version: '3.4'
|
|
|
|
|
|
|
|
services:
|
|
|
|
app:
|
2023-03-06 10:35:43 +01:00
|
|
|
image: 'miniflux/miniflux:2.0.42'
|
2022-03-19 09:42:09 +01:00
|
|
|
command: '/usr/bin/miniflux -c /etc/miniflux.conf'
|
|
|
|
|
|
|
|
deploy:
|
|
|
|
mode: 'replicated'
|
|
|
|
replicas: 1
|
|
|
|
placement:
|
|
|
|
constraints:
|
|
|
|
- 'node.labels.class.miniflux==true'
|
|
|
|
labels:
|
|
|
|
- 'traefik.enable=true'
|
|
|
|
- 'traefik.http.routers.miniflux.rule=Host(`nws.rustybever.be`)'
|
|
|
|
- 'traefik.http.routers.miniflux.tls=true'
|
|
|
|
- 'traefik.http.routers.miniflux.tls.certresolver=letsEncrypt'
|
|
|
|
- 'traefik.http.services.miniflux.loadbalancer.server.port=8080'
|
|
|
|
|
|
|
|
configs:
|
2022-05-14 11:53:42 +02:00
|
|
|
- source: miniflux_v2
|
2022-03-19 09:42:09 +01:00
|
|
|
target: /etc/miniflux.conf
|
|
|
|
environment:
|
2022-05-14 11:53:42 +02:00
|
|
|
- 'ADMIN_USERNAME_FILE=/run/secrets/miniflux_admin_username'
|
|
|
|
- 'ADMIN_PASSWORD_FILE=/run/secrets/miniflux_admin_password_v2'
|
2022-03-19 09:42:09 +01:00
|
|
|
networks:
|
|
|
|
- default
|
|
|
|
- public
|
|
|
|
secrets:
|
2022-05-14 11:53:42 +02:00
|
|
|
- miniflux_admin_username
|
|
|
|
- miniflux_admin_password_v2
|
2022-03-19 09:42:09 +01:00
|
|
|
|
|
|
|
db:
|
2023-03-06 10:35:43 +01:00
|
|
|
image: 'postgres:14.7-alpine'
|
2022-03-19 09:42:09 +01:00
|
|
|
|
|
|
|
deploy:
|
|
|
|
mode: 'replicated'
|
|
|
|
replicas: 1
|
|
|
|
placement:
|
|
|
|
constraints:
|
|
|
|
- 'node.labels.class.miniflux==true'
|
|
|
|
|
|
|
|
environment:
|
|
|
|
- 'POSTGRES_DB=miniflux'
|
|
|
|
- 'POSTGRES_USER=miniflux'
|
|
|
|
- 'POSTGRES_PASSWORD=miniflux'
|
|
|
|
volumes:
|
|
|
|
- 'db-data:/var/lib/postgresql/data'
|
|
|
|
|
|
|
|
reddit:
|
|
|
|
image: 'johnny5w/reddit-top-rss:latest'
|
|
|
|
|
|
|
|
deploy:
|
|
|
|
mode: 'replicated'
|
|
|
|
replicas: 1
|
|
|
|
placement:
|
|
|
|
constraints:
|
|
|
|
- 'node.labels.class.miniflux==true'
|
|
|
|
|
2022-04-23 12:17:11 +02:00
|
|
|
hub:
|
|
|
|
image: 'diygod/rsshub:latest'
|
|
|
|
|
|
|
|
deploy:
|
|
|
|
mode: 'replicated'
|
|
|
|
replicas: 1
|
|
|
|
placement:
|
|
|
|
constraints:
|
|
|
|
- 'node.labels.class.miniflux==true'
|
|
|
|
|
|
|
|
environment:
|
|
|
|
# For shorter URLs inside miniflux
|
|
|
|
- 'PORT=80'
|
|
|
|
- 'IG_USERNAME'
|
|
|
|
- 'IG_PASSWORD'
|
|
|
|
|
|
|
|
|
2022-03-19 09:42:09 +01:00
|
|
|
configs:
|
2022-05-14 11:53:42 +02:00
|
|
|
miniflux_v2:
|
2022-03-19 09:42:09 +01:00
|
|
|
external: true
|
|
|
|
|
|
|
|
networks:
|
|
|
|
public:
|
|
|
|
external: true
|
|
|
|
|
|
|
|
secrets:
|
2022-05-14 11:53:42 +02:00
|
|
|
miniflux_admin_username:
|
|
|
|
external: true
|
|
|
|
miniflux_admin_password_v2:
|
2022-03-19 09:42:09 +01:00
|
|
|
external: true
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
db-data:
|