Add Tiny Tiny RSS setup

This commit is contained in:
Norbert Tretkowski 2025-06-10 18:26:25 +02:00
parent 7954ae4bd3
commit d0477ab197
Signed by: norbert
GPG key ID: EAA31A3693AAB231

View file

@ -0,0 +1,90 @@
services:
traefik:
image: traefik:v3.3
container_name: traefik
restart: always
command:
- --api.insecure=false
- --providers.docker=true
- --providers.docker.exposedbydefault=false
- --entrypoints.web.address=:80
- --entrypoints.web.http.redirections.entrypoint.to=websecure
- --entrypoints.web.http.redirections.entrypoint.scheme=https
- --entrypoints.websecure.address=:443
- --certificatesresolvers.myresolver.acme.httpchallenge=true
- --certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web
- --certificatesresolvers.myresolver.acme.email=norbert@tretkowski.de
- --certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json
ports:
- 80:80
- 443:443
volumes:
- ./traefik/letsencrypt:/letsencrypt
- /var/run/docker.sock:/var/run/docker.sock:ro
# see FAQ entry below if upgrading from a different PostgreSQL major version (e.g. 12 to 15):
# https://tt-rss.org/wiki/InstallationNotes/#i-got-the-updated-compose-file-above-and-now-my-database-keeps-restarting
db:
image: postgres:15-alpine
restart: unless-stopped
env_file:
- .env
environment:
- POSTGRES_USER=${TTRSS_DB_USER}
- POSTGRES_PASSWORD=${TTRSS_DB_PASS}
- POSTGRES_DB=${TTRSS_DB_NAME}
volumes:
- ./db:/var/lib/postgresql/data
app:
image: cthulhoo/ttrss-fpm-pgsql-static:latest
restart: unless-stopped
env_file:
- .env
volumes:
- ./app:/var/www/html
- ./config.d:/opt/tt-rss/config.d:ro
depends_on:
- db
optional, makes weekly backups of your install
backups:
image: cthulhoo/ttrss-fpm-pgsql-static:latest
restart: unless-stopped
env_file:
- .env
volumes:
- ./backups:/backups
- ./app:/var/www/html
depends_on:
- db
command: /opt/tt-rss/dcron.sh -f
updater:
image: cthulhoo/ttrss-fpm-pgsql-static:latest
restart: unless-stopped
env_file:
- .env
volumes:
- ./app:/var/www/html
- ./config.d:/opt/tt-rss/config.d:ro
depends_on:
- app
command: /opt/tt-rss/updater.sh
web-nginx:
image: cthulhoo/ttrss-web-nginx:latest
restart: unless-stopped
env_file:
- .env
ports:
- ${HTTP_PORT}:80
labels:
- traefik.enable=true
- traefik.http.routers.web-nginx.rule=Host(`news.tretkowski.de`)
- traefik.http.routers.web-nginx.entrypoints=websecure
- traefik.http.routers.web-nginx.tls.certresolver=myresolver
volumes:
- ./app:/var/www/html:ro
depends_on:
- app