90 lines
2.6 KiB
YAML
90 lines
2.6 KiB
YAML
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
|