自分のサーバーでホストするRSSリーダーをTiny Tiny RSSで手に入れよう

Tiny Tiny RSSは、シンプルでありながら非常に柔軟なウェブベースのRSSリーダーで、自分のサーバーにインストールできます。これにより、RSSフィードの個人ライブラリを作成し、自動的に更新されるフィードをブラウザから直接読むことができます。
この記事では、UbuntuにTiny Tiny RSSをインストールする方法を紹介します。
目次
- Dockerのインストール
- Tiny Tiny RSSの取得と設定
- Nginxを使用したリバースプロキシの設定
- SSL証明書の生成
- Tiny Tiny RSSインスタンスの使用
Dockerのインストール
始めるには、DockerとDocker Composeをインストールする必要があります。
- Dockerプロジェクトのウェブサイトからパッケージ署名キーを取得します:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg- お好みのテキストエディタを使用して新しいパッケージリポジトリファイルを作成します:
sudo nano /etc/apt/sources.list.d/docker.list- 新しいリポジトリファイルに以下を貼り付けます:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable- パッケージリポジトリを更新し、Dockerとその関連アプリケーションをインストールできます:
sudo apt update
sudo apt install git docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-pluginTiny Tiny RSSの取得と設定
- 開発者のGithubページからGitリポジトリを取得します:
git clone https://git.tt-rss.org/fox/ttrss-docker-compose.git
cd ./ttrss-docker-compose- Tiny Tiny RSSのメインプロダクションブランチに切り替えます。
git checkout static-dockerhub- Gitリポジトリに付属のデフォルト環境ファイルのコピーを作成し、「.env」として再保存します:
cp ./.env-dist ./.env- お好みのテキストエディタを使用して新しい環境ファイルを開きます:
nano ./.env- 「#ADMIN_USER_PASS=」変数までスクロールし、その前のシャープ記号(#)を削除し、等号(=)の後に安全なパスワードを追加します。

注意: 新しいターミナルを開き、次のコマンドを実行して安全なパスワードを生成できます: cat /dev/urandom | tr -dc 'A-Za-z0-9' | fold -w 16 | head -n 1。
- 「#ADMIN_USER_ACCESS_LEVEL=」変数までスクロールし、その前のシャープ記号(#)を削除し、等号(=)の後に「10」を追加します。

これにより、インスタンスを最初に起動したときに管理者アカウントに適切な権限が付与されます。
- 「TTRSS_SELF_URL_PATH=」変数までスクロールし、その値をTiny Tiny RSSインストールをホストしているドメイン名に置き換えます。

- ローカルの「.env」ファイルを保存し、DockerhubからTiny Tiny RSSのDockerイメージをプルします:
docker compose pull- ローカルインスタンスのためにDocker Composeスイートをビルドできます:
docker compose up -dヒント: Dockerは、ウェブサービスを立ち上げるための手段以上のものです。Docker管理の基本を理解することで、コンテナをどのように使用できるかを学びましょう。
Nginxを使用したリバースプロキシの設定
この時点で、ポート8280で放送している動作中のTiny Tiny RSSコンテナがあります。ただし、これに外部からアクセスするには、ネットワーク外からの接続を処理するリバースプロキシを提供する必要があります。
- マシンにNginxをインストールします:
sudo apt install nginx- リバースプロキシ用の新しいサイト設定ファイルを作成します:
sudo nano /etc/nginx/sites-available/ttrss- 空のリバースプロキシ設定ファイルに以下のコードブロックを貼り付けます:
server {
listen 80;
listen [::]:80;
root /var/www/html;
server_name ttrss.myvpsserver.top;
location / {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://127.0.0.1:8280;
}
}- 新しいリバースプロキシ設定ファイルのシンボリックリンクを作成します:
sudo ln -s /etc/nginx/sites-available/ttrss /etc/nginx/sites-enabled/- デフォルトのNginx設定ファイルを削除し、Nginxデーモンを有効にします:
sudo rm /etc/nginx/sites-enabled/default
sudo systemctl enable --now nginx.serviceSSL証明書の生成
リバースプロキシが実行されている状態で、次に行うべきことは、受信接続の暗号化を有効にすることです。
- SSLを有効にするには、マシンに動作中で最新のsnapデーモンがあることを確認する必要があります:
sudo snap install core
sudo snap refresh core- Certbotユーティリティをインストールします:
sudo snap install certbot --classic- 次のコマンドを実行して、新しいcertbotインストールをEFFに登録します:
sudo certbot register --agree-tos --email [email protected]- ドメインURLのSSL証明書をリクエストします:
sudo certbot --nginx -d ttrss.myvpsserver.top
知っておくと良いこと: OpenSSLを使用して独自の証明書を作成することで、信頼できない公共ネットワークでの暗号化の仕組みを学びましょう。
Tiny Tiny RSSインスタンスの使用
ドメインURLにアクセスすることで、新しいTiny Tiny RSSインスタンスにアクセスできます。

「admin」と安全なパスワードでログインします。

ページの右上隅にあるメニューアイコンをクリックします。

これにより、インスタンスとその中のリストを管理できる小さなメニューが表示されます。「Feed actions:」カテゴリの下にある「フィードを購読…」オプションをクリックします。
購読したいフィードのRSSリンクを貼り付け、次に「購読」をクリックします。

Tiny Tiny RSSページを更新して、新しいRSSフィードのリストを反映させます。

新しいフィードカテゴリの作成
RSSフィードを購読するだけでなく、Tiny Tiny RSSはインスタンス内の既存のフィードを整理する機能もサポートしています。これは、似たようなフィードを1つの一般的なカテゴリの下に整理したい場合に役立ちます。
新しいフィードカテゴリを作成するには、ページの右上隅にあるメニューボタンを押し、「設定…」をクリックします。
ページの上部バーにある「フィード」をクリックします。

- 「マイフィード」サブフレーム内の「カテゴリ」ドロップダウンボックスをクリックし、「カテゴリを追加」をクリックします。

- 新しいフィードカテゴリの名前を入力し、「OK」を押します。

現在のRSSフィードの編集
新しいフィードカテゴリが作成されたので、既存のRSSリンクをすべてその下に含めることができます。これを行うには、設定メニューに戻り、「フィード」をクリックします。

変更したいRSSフィードをクリックします。これにより、フィードのすべての利用可能なオプションをリストする小さなウィンドウが表示されます。
「カテゴリに配置:」ラベルの横にあるドロップダウンボックスをクリックし、新しいカテゴリを選択します。

「保存」をクリックして新しい設定を保存し、「設定を終了」をクリックしてインスタンスのホームページに戻ります。

RSSリーダーを自己ホストすることは、デジタル主権を取り戻すための第一歩に過ぎません。Docker上でWordPressを展開して独自のコンテンツプラットフォームをホストしたり、Pleromaを使用して独自のTwitterクローンを作成したりする方法を学びましょう。
画像クレジット: 123RFの黒いノートパソコンのキーボード上のワイヤレスキー。すべての変更とスクリーンショットはRamces Redによるものです。