セルフホスティング(自分用に自分で管理している)しているサービス(2023.05版)

セルフホスティング
Sponsored Link

セルフホスティングとは

セルフホスティングとは自分用のサービスを自分自身で管理している事です。
「セルフ=自分で」、「ホスティング=サーバーを用意」の意味が正しいですね。

セルフホスティングしている環境はまた記事にしたいと思いますが、簡単には以下のような構成です。

なので、今から紹介するセルフホスティングしているサービスは、全てdocker上で稼働しています。

サービス一覧

サービス名 用途 備考
gitbucket Gitサーバー https://github.com/gitbucket/gitbucket
graylog ログ管理 https://github.com/Graylog2
joplin ノートアプリ(joplin)の同期用サーバー https://github.com/laurent22/joplin
linkding オンラインブックマーク https://github.com/sissbruecker/linkding
radicale スケジュール(CalDAV)、アドレス帳(CardDAV)サーバー https://github.com/Kozea/Radicale
vaultwarden パスワード管理(bitwarden) https://github.com/dani-garcia/vaultwarden
wallabag 後で読むWebページ保存(Pocketのようなもの) https://github.com/wallabag/wallabag
wekan Kanbanツール https://github.com/wekan/wekan

gitbucket

GitHub - gitbucket/gitbucket: A Git platform powered by Scala with easy installation, high extensibility & GitHub API compatibility
A Git platform powered by Scala with easy installation, high extensibility & GitHub API compatibility - gitbucket/gitbuc...

GitHubをセルフホスティングできるイメージです。
フリーで使える環境として有名なところではGitLabがありますが、GitLabはリソースが多く必要です。

あくまでもブログのファイルや、日々のメモファイルなどを複数端末で編集したり閲覧できることをメインに使っているので、軽量で必要十分の機能があるGitBucketを使用しています。

作者の方が日本人というのもポイントでした。

graylog

Graylog
Graylog has 63 repositories available. Follow their code on GitHub.

ログ管理を行うためのサービスです。
Syslogサーバーの一歩進んだような感じで、各機器から集めたログをためて、検索などの機能を提供してくれます。
(検索にはelasticsearchを使用します。)

主にファイアウォールのログ収集に使用していますが、Webアクセス情報のログなども収集しています。

joplin

GitHub - laurent22/joplin: Joplin - the secure note taking and to-do app with synchronisation capabilities for Windows, macOS, Linux, Android and iOS.
Joplin - the secure note taking and to-do app with synchronisation capabilities for Windows, macOS, Linux, Android and i...

エディタソフトのJoplin用のサーバーです。
複数端末間でJoplinのデータを同期したりするのに使用します。

基本GitBucketで十分なのですが、Android端末からのデータ同期に活用しようかなと最近建ててみました。
が、今評価中なのでそのうちなくなっているかもしれません。。。

構築方法は以下の記事を参照してください。
https://blog.picocake.com/index.php/2023/05/16/joplin_server/

linkding

GitHub - sissbruecker/linkding: Self-hosted bookmark manager that is designed be to be minimal, fast, and easy to set up using Docker.
Self-hosted bookmark manager that is designed be to be minimal, fast, and easy to set up using Docker. - sissbruecker/li...

ブックマークをオンラインで保存するためのサービスです。

例えばChromeやFirefoxなどのブラウザに同期機能がついていたりしますが、端末によって使用しているブラウザが違う場合や、ちょっと確認したいときなどにデータがWeb上にあると便利です。
あと、会社の端末で発見した気になるサイトを登録して、後でゆっくり見るなどもやっています。
(後から出てくるwallabagと併用している感じです。)

radicale

GitHub - Kozea/Radicale: A simple CalDAV (calendar) and CardDAV (contact) server.
A simple CalDAV (calendar) and CardDAV (contact) server. - Kozea/Radicale

スケジュールデータとアドレス帳データを保存するサーバーです。
規格としては一般的なCalDAV, CardDAVを採用しているので、クライアント側の制約はほぼありません。

GoogleのサービスやMicrosoft 365のサービスでも複数端末で同期できますが、スケジュールやアドレス帳は超プライベートなデータだと思っているので、できれば自前で管理したい!という思いから使用しています。
予定を入れたらその予定に関連する広告が表示されたりすると、ぎょっとしたりしますし。。。

valutwarden

GitHub - dani-garcia/vaultwarden: Unofficial Bitwarden compatible server written in Rust, formerly known as bitwarden_rs
Unofficial Bitwarden compatible server written in Rust, formerly known as bitwarden_rs - dani-garcia/vaultwarden

有名なパスワード管理サービスのbitwardenのフォークです。
bitwarden自体もセルフホスティング可能ですが、リソースが結構必要なので、軽量なvaultwardenを利用しています。

スケジュールやアドレス帳もそうですが、パスワードは超超プライベートな情報なので、自前で管理したい思いが強いです。
もちろんChromeやFirefoxなどのブラウザ間で同期したりできることもありますが、パスワードはほかのサービスに預けたくないですね。

パスワードだけではなく、クレジットカードの情報やセキュアメモなども保存できます。
bitwarden自体は暗号化方式も含めオープンソースとして公開されており、怪しい動きはしないというのも選んだ理由です。

wallabag

GitHub - wallabag/wallabag: wallabag is a self hostable application for saving web pages: Save and classify articles. Read them later. Freely.
wallabag is a self hostable application for saving web pages: Save and classify articles. Read them later. Freely. - wal...

有名なところではPocket(旧 Read It Later)というサービスがあるWebページを後で読むために一時的に保存できるサービスです。

昔はPocketを愛用していましたが、なんとなくこれ自前でできるんじゃない?と思って探して見つけた感じです。
一時的な情報なので、正直クラウドサービスでもいいんじゃないかなと思っていますので、一旦切り替えて運用してみて検証中な感じです。

wekan

GitHub - wekan/wekan: The Open Source kanban (built with Meteor). Keep variable/table/field names camelCase. For translations, only add Pull Request changes to wekan/i18n/en.i18n.json , other translations are done at https://app.transifex.com/wekan/wekan only.
The Open Source kanban (built with Meteor). Keep variable/table/field names camelCase. For translations, only add Pull R...

オンラインでKanbanを利用するためのサービスです。

Kanbanはアジャイル開発などで利用される、やることをホワイトボードに付箋で張って、「実施前」「実施中」「完了」などを視覚化するようなものです。
自身のToDo管理で使えるかなーと思いながら使ってみましたが、今はVSCodeのアドオンのToDo管理+GitBucketで管理していたりします。
(さっき久しぶりにログインしました。)

そのうちなくなっているかも。。。

セルフホスティングのいいところ

セルフホスティングをしている目的は主に以下の2つです。

  • 便利なツールをサービス費用をかけずに使う
  • プライベートな情報を自分で管理する

使っているもののほとんどはクラウドサービスがあり、課金をすれば便利に使えます。
そして、クラウドサービスのほうがデータのバックアップなどを考えなくてもよく、耐障害性も高いので何も考えない場合はおすすめです。

ただ、気軽に試してみようとしたときに課金が必要ないことがセルフホスティングではできます。

また、プライベートな情報を可能な限り個人で管理することで(経路上Webを通っているので気休め感はありますが)情報を守ることができ(と思ってい)ます。

あとは単純に仕組みを理解することができます。
もちろんdockerで動いているので、何も考えなければdocekrを立ち上げておしまいですが、データが格納されているDBを除いてみたりもでき、どのようにして動いているかを確認したりすることができます。

設備がちょっとだけ必要なので、ちょっとハードルは高いですが、私のようにNASについているおまけのような仮想化機能などを利用して、興味がある方はチャレンジしてみるのもいいのではないでしょうか。

仕組みに関しては別の記事で構築の仕方を含めて書ければいいなと思っています。

コメント