https://github.com/nventiveux/docker-ttrss
A multiarch docker image for Tiny Tiny RSS feed reader
https://github.com/nventiveux/docker-ttrss
arm docker raspberrypi rss rss-aggregator tiny-tiny-rss tt-rss
Last synced: 30 days ago
JSON representation
A multiarch docker image for Tiny Tiny RSS feed reader
- Host: GitHub
- URL: https://github.com/nventiveux/docker-ttrss
- Owner: nVentiveUX
- Created: 2018-01-20T00:11:13.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2026-01-24T08:22:36.000Z (2 months ago)
- Last Synced: 2026-01-24T18:59:49.916Z (2 months ago)
- Topics: arm, docker, raspberrypi, rss, rss-aggregator, tiny-tiny-rss, tt-rss
- Language: Dockerfile
- Homepage: https://hub.docker.com/r/nventiveux/ttrss/
- Size: 233 KB
- Stars: 25
- Watchers: 2
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Tiny Tiny RSS docker image
> [!IMPORTANT]
> The author of TT-RSS has announced the shutdown of all infrastructure related to the project ([announcement](https://community.tt-rss.org/t/the-end-of-tt-rss-org/7164)). To ensure continued functionality, I’ve migrated the image build process to target the official fork at [tt-rss/tt-rss](https://github.com/tt-rss/tt-rss). This change maintains operational stability while preserving the project’s utility for the community <3.
>
> I’ve transitioned to [FreshRSS](https://github.com/FreshRSS/FreshRSS) over the past few years. **This project is now in maintenance mode.** While I will no longer implement new features, I remain committed to:
>
> - Reviewing pull requests
> - Addressing minor bugs
> - Supporting the community
>
> Merci beaucoup 💪
[](https://github.com/nVentiveUX/docker-ttrss/actions/workflows/release.yaml)
Host [Tiny Tiny RSS](https://github.com/tt-rss/tt-rss) instance in a docker container supporting amd64, arm64 and arm architectures (RaspberryPi).
* [Available images and tags](#available-images-and-tags)
* [Features](#features)
* [Configuration](#configuration)
* [Usage](#usage)
* [Prepare the database](#prepare-the-database)
* [Run TTRSS instance](#run-ttrss-instance)
* [Tests and development](#tests-and-development)
* [Maintenance](#maintenance)
* [Restoring a PostgreSQL database](#restoring-a-postgresql-database)
## Available images and tags
The following multi-architecture image is available:
* **[nventiveux/ttrss](https://hub.docker.com/r/nventiveux/ttrss)**
* *latest* ([Dockerfile](https://github.com/nVentiveUX/docker-ttrss/blob/master/Dockerfile))
* [See all tags](https://hub.docker.com/r/nventiveux/ttrss/tags?page=1&ordering=last_updated)
**Hint**: tags are following [calver versionning](https://calver.org/) with pattern `vYYYY.MM.DD`.
## Features
Some additionnals features are added to the base installation of TT-RSS:
* [Feedly](https://github.com/levito/tt-rss-feedly-theme) theme.
* [Mercury Fulltext](https://github.com/HenryQW/mercury_fulltext) plugin installed (you need to [configure and enable it](https://github.com/HenryQW/mercury_fulltext#installation) before).
## Configuration
We are now using configuration through environment variables from upstream project. Refer to [this documentation](https://tt-rss.org/docs/Global-Config.html).
## Usage
Create a network:
```sh
docker network create ttrss_net
```
### Prepare the database
You have 2 choices: **postgresql** or **mysql** database.
Create a **postgresql** database:
```sh
docker run \
-d \
--name ttrss_database \
-v ttrss_db_vol:/var/lib/postgresql/data \
-e POSTGRES_USER=ttrss \
-e POSTGRES_PASSWORD=ttrss \
--network ttrss_net \
postgres:12.6-alpine
```
Create a **mysql** database:
```sh
docker run \
-d \
--name ttrss_database \
-v ttrss_db_vol:/var/lib/mysql \
-e MYSQL_DATABASE=ttrss \
-e MYSQL_USER=ttrss \
-e MYSQL_PASSWORD=ttrss \
-e MYSQL_ROOT_PASSWORD=ttrssroot \
--network ttrss_net \
mysql:8.0.23
```
### Run TTRSS instance
Run **ttrss** instance (adapt `TTRSS_DB_TYPE` to `mysql` if database is MySQL / MariaDB):
```sh
docker run \
-d \
--name ttrss \
-e TTRSS_DB_HOST="ttrss_database" \
-e TTRSS_DB_TYPE="pgsql" \
-p 8000:80 \
--network ttrss_net \
nventiveux/ttrss:latest
```
Open browser to [http://localhost:8000/](http://localhost:8000/). Login as **admin** with password **password**.
## Tests and development
Adapt the `Dockerfile` to your needs.
Then test the image locally:
```sh
# PostgresSQL
cd tests/ttrss-pgsql && docker-compose up --build
# MySQL
cd tests/ttrss-mysql && docker-compose up --build
```
Open browser to [http://localhost:8000/](http://localhost:8000/). Login as **admin** with password **password**.
## Maintenance
### Restoring a PostgreSQL database
```sh
# Using docker
docker exec -i \
pg_restore \
--no-acl \
--no-owner \
-U ttrss \
-d ttrss <
# Using docker-compose
docker-compose exec -T database \
pg_restore \
--no-acl \
--no-owner \
-U ttrss \
-d ttrss < /home/vbesancon/tmp/db_ttrss_1615503601.pgdump
```