RSSの便利さに気づき、FreshRSSを導入したわけですが、そこから更にSelf-hostedの世界に気づいてしまいました。
Self-hostedとはつまり、自分の持っているサーバー(VPSやVMでも)に自分用のサービスをホスティングすることです。 日本語にしたら「自己ホスティング」と言うのが正しいのでしょうが、Self-hostedの方がかっこいいのでそう呼びます。
作業メモも兼ねて、導入したサービスをまとめておきます。
FreshRSS
RSSリーダー。導入してから毎日使ってます。便利。
詳細は上記記事参照。
RSSHub
あらゆるWebサイトのRSSを生成してくれるサービス。最初はどういう仕組なのかよくわからなかったが、理解したら便利すぎて驚いた。
RSSHubには、あらゆるサイトのRSSを生成する機能が存在する。対応しているサイトは公式ドキュメントに記載されている。
これらの機能はコミュニティの貢献によって実装・維持されている。
Public instanceも一応あるが、多くの人が使うとIPブロックされるのであまり役に立たない。そのため、自分専用のRSSHubを立てる、つまりSelf-hostedするのが良い。
RSSHub Radar
ブラウザ拡張機能として、RSSHub Radar が用意されている。設定から
- RSSHubのURL
- RSSHubのパスフレーズ(これを指定しないとRSSHubのAPIを使えないように設定する)
- FreshRSS(あるいは任意のRSSリーダー)のURL
を指定しておくと、今いるページにある公式のRSSフィードだけでなく、RSSHubで生成可能なRSSフィードも検出してくれる。ワンクリックでFreshRSSの購読登録画面に飛べるので非常に便利。というかRSSHubを使うならRSSHub Radarは必須かも。
Memos
超シンプルなメモアプリ。自分専用のメモを取りたい人におすすめ。
機能的には、DiscordやSlackで自分に向けてDMを送るのとほぼ同じ。Markdown対応、タグ付け、画像アップロードなどの機能がある。
だが検索がとても強力で、正規表現も使える。またシンプルなAPI経由でメッセージを投げたり取得したり、Webhookを設定して「メモが追加されたらDiscordに通知」とかもできる。
Self-hostedのメリットは、データを自分で管理できること。サービスが終了したり、規約が変更されたりする心配がない。プライバシーの観点からも安心できる。
Memosに投げるショートカットキーの設定
MemosはAPI経由でメッセージを追加できるので、MacOSで独自のショートカットを作成し、キーボードショートカットで呼び出してメモを追加することもできる。
Cmd+Shift+0を押すとプロンプトが開き、メモを入力してEnterを押すとMemosにメモが追加されるように設定した。
これで、PC作業中やネットサーフィン中に思いついたことを一瞬でメモできる。あとは、ちょっと長期的に覚えておきたい文字列や、複数の文字列をコピペしたいときとかにも便利。

Future work
APIを上手く使って、例えば毎日の終わりに「今日の振り返り」みたいなメモを自動で追加したりすると面白そう。
Uptime Kuma
サーバーやWebサービスの稼働状況を監視するツール。指定したURLに定期的にアクセスし、応答があるかどうかをチェックしてくれる。
今のところはちゃんと動いてるのを眺めて悦に浸るくらいの用途しか無いが、今後もっと色々やり始めたら真価を発揮しそう。サービスが落ちてたらどこかに通知を飛ばすみたいなこともできるっぽい。

Netdata
サーバーのリソース使用状況をリアルタイムで監視するツール。CPU、メモリ、ディスク、ネットワークなどの使用状況をグラフで表示してくれる。
今のところ無料枠で全てを片付けようとしているので、VPSのリソース使用状況を監視するのは重要。とはいえこれも、美しいダッシュボードを見て悦に浸るくらいの用途。

Nginx Proxy Manager
Nginxの設定をGUIで管理できるツール。複数のドメインやサービスを一つのサーバーでホスティングする場合に便利。
特にNetdataに関しては、リバースプロキシを介してアクセスすることで、外部からのアクセスを制限するのに必須。
VMについて
Compute Engineを使っていたが、あまりにも貧弱でUptime Kumaを入れたあたりで動作が怪しくなってしまった。そこで、Oracle cloudのAlways Free枠を使うことにした。
とんでもなくお得なVM.Standard.A1.Flexは、最大4つのCPUと24GBのRAMを持ち、月額料金は0円。これを使いたいが、枠が全然確保できないので、今のところVM.Standard.E2.1.Microで妥協している。
それでも、日本リージョンが使えるのと、記憶領域がHDDではなくSSDなのでSwapが使い物になるのは大きい。今のところこれらを入れても問題なく動作している。
しかし、Oracle Cloudに関しては、触れば触るほど、調べれば調べるほど、色々とイマイチな点が見つかる。特に恐ろしいのが、事前通知なく突然VMが停止される・アカウントBANされるなどのトラブルがあったらしい。
以下の記事に以前の祭りのまとめがある。日本国内だけでもこれだけOCIアカウント停止問題が起きているというのはなかなかヤバいのでは。
Dockerについて
正直これまでDockerのことをよく理解していなかったが、Self-hosted環境を構築することでようやく、Dockerのすごさが理解できた。MinecraftとWordpressを一つのサーバーで動かそうとして色々破壊してしまった昔の自分に教えてあげたい。
今後
とにかくまずはVM.Standard.A1.Flexを確保したい。が、一生モノの付き合いをしていくならば、OCI上で構築するのは危険な気もしている。使い古しのPCにUbuntuを入れて自宅サーバーを立て、Homelabを構築するのが一番良いのかもしれない。Self-hostedの精神にもかなっているし。