feat(freshrss): add personal rss reader

This commit is contained in:
Eduardo David Paredes Vara
2026-07-25 13:25:13 +00:00
parent 95a5f11870
commit 1911fba582
5 changed files with 82 additions and 0 deletions
+10
View File
@@ -0,0 +1,10 @@
TZ=Europe/Madrid
FRESHRSS_IMAGE=freshrss/freshrss:latest
FRESHRSS_DOMAIN=rss.sherlockhomeless.net
FRESHRSS_DATA_PATH=/opt/freshrss/data
FRESHRSS_EXTENSIONS_PATH=/opt/freshrss/extensions
FRESHRSS_CRON_MIN=3,33
FRESHRSS_ENV=production
TRAEFIK_DOCKER_NETWORK=proxy
+17
View File
@@ -0,0 +1,17 @@
# FreshRSS
Lector RSS personal publicado en `rss.sherlockhomeless.net`.
## Despliegue
```bash
cp .env.example .env
docker compose --env-file .env config
docker compose --env-file .env up -d
```
El primer acceso abre el instalador de FreshRSS. Para este servidor se usa SQLite
con persistencia en `/opt/freshrss`.
El enrutado publico vive en `/opt/traefik/dynamic/freshrss.yml` y el servicio
esta preparado para Sablier con el middleware `sablier-freshrss@file`.
+34
View File
@@ -0,0 +1,34 @@
services:
freshrss:
image: ${FRESHRSS_IMAGE}
container_name: freshrss
restart: unless-stopped
environment:
TZ: ${TZ}
CRON_MIN: ${FRESHRSS_CRON_MIN}
FRESHRSS_ENV: ${FRESHRSS_ENV}
volumes:
- ${FRESHRSS_DATA_PATH}:/var/www/FreshRSS/data:Z
- ${FRESHRSS_EXTENSIONS_PATH}:/var/www/FreshRSS/extensions:Z
networks:
- freshrss_internal
- proxy
labels:
prune.protect: "true"
traefik.enable: "true"
traefik.docker.network: "${TRAEFIK_DOCKER_NETWORK}"
homepage.group: "Productividad"
homepage.name: "FreshRSS"
homepage.icon: "https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/freshrss.svg"
homepage.description: "Lector RSS personal"
homepage.href: "https://${FRESHRSS_DOMAIN}/"
homepage.siteMonitor: "http://freshrss:80/"
homepage.weight: "560"
networks:
freshrss_internal:
driver: bridge
labels:
prune.protect: "true"
proxy:
external: true
+19
View File
@@ -0,0 +1,19 @@
http:
routers:
freshrss:
rule: Host(`rss.sherlockhomeless.net`)
entryPoints:
- websecure
tls:
certResolver: letsencrypt
middlewares:
- crowdsec-bouncer@file
- ths-authentik@docker
- sablier-freshrss@file
service: freshrss
services:
freshrss:
loadBalancer:
servers:
- url: http://freshrss:80
+2
View File
@@ -27,6 +27,7 @@ DEFAULT_ENDPOINTS = [
"https://memos.sherlockhomeless.net",
"https://vikunja.sherlockhomeless.net",
"https://karakeep.sherlockhomeless.net",
"https://rss.sherlockhomeless.net",
"https://ots.sherlockhomeless.net",
"https://dozzle.sherlockhomeless.net",
"https://beszel.sherlockhomeless.net",
@@ -34,6 +35,7 @@ DEFAULT_ENDPOINTS = [
DEFAULT_ACCEPTED_STATUS_CODES = {
"https://traefik.sherlockhomeless.net": {200, 301, 302, 303, 307, 308, 401, 403},
"https://rss.sherlockhomeless.net": {200, 301, 302, 303, 307, 308, 401, 403},
"https://ots.sherlockhomeless.net": {200, 301, 302, 303, 307, 308, 401, 403},
"https://dozzle.sherlockhomeless.net": {200, 301, 302, 303, 307, 308, 401, 403},
}