version: "2.3" x-app: &app image: cthulhoo/ttrss-fpm-pgsql-static:latest restart: unless-stopped environment: - TTRSS_DB_USER=tt-rss - TTRSS_DB_NAME=tt-rss - TTRSS_DB_PASS=tt-rss - TTRSS_SELF_URL_PATH=https://tt-rss.jakehoward.tech/tt-rss/ - TTRSS_ENABLE_REGISTRATION=false - TTRSS_CHECK_FOR_UPDATES=false - TTRSS_ENABLE_GZIP_OUTPUT=true - TTRSS_NO_STARTUP_PLUGIN_UPDATES=true - OWNER_UID={{ docker_user.id }} - OWNER_GID={{ docker_user.id }} - PHP_WORKER_MAX_CHILDREN=50 - PHP_WORKER_MEMORY_LIMIT=512M volumes: - ./tt-rss:/var/www/html - "{{ app_data_dir }}/tt-rss/feed-icons:/var/www/html/tt-rss/feed-icons" - ./plugins:/var/www/html/tt-rss/plugins.local services: nginx: image: cthulhoo/ttrss-web-nginx:latest restart: unless-stopped labels: - traefik.enable=true - traefik.http.routers.tt-rss.rule=Host(`tt-rss.jakehoward.tech`) - traefik.http.middlewares.add-ttrss.addprefix.prefix=/tt-rss - traefik.http.middlewares.remove-ttrss.stripprefix.prefixes=/tt-rss - traefik.http.routers.tt-rss.middlewares=remove-ttrss,add-ttrss volumes: - ./tt-rss:/var/www/html - "{{ app_data_dir }}/tt-rss/feed-icons:/var/www/html/tt-rss/feed-icons:ro" - ./plugins:/var/www/html/tt-rss/plugins.local depends_on: - app networks: - default - traefik app: <<: *app depends_on: - db updater: <<: *app command: /opt/tt-rss/updater.sh depends_on: - app db: image: postgres:16-alpine restart: unless-stopped volumes: - /mnt/speed/dbs/postgres/tt-rss:/var/lib/postgresql/data environment: - POSTGRES_PASSWORD=tt-rss - POSTGRES_USER=tt-rss networks: traefik: external: true