Is it possible to host a #Mastodon #server using a distributed #p2p system?
#Dat #DatEcosystem #Hypercore #HypercoreProtocol #Agregore #Beaker #DatDot
Is it possible to host a #Mastodon #server using a distributed #p2p system?
#Dat #DatEcosystem #Hypercore #HypercoreProtocol #Agregore #Beaker #DatDot
ipfs -> Golanghyp -> Node.js
どちらも分散型ファイルシステムで、BitTorrent 的なネットワークをファイルシステムに見立てている。
ipfs は個々のファイルが中心で、ファイルとファイルを紐付けてディレクトリにしている印象。
hyp はディレクトリを作って、そこにファイルを設置する印象。
公式のファイル公開、という意味では ipfs が使いやすそう。
共有ディレクトリをシェア、という意味では hyp が使いやすそう。
ファイルの更新は素直に動けばディレクトリベースの hyp が 1 勝かな。
どちらも P2P なので自分のグローバル IP が伝わってしまうのはどっちも同じ。
ただ ipfs は、完全 P2P 型とサーバー・クライアント型の、中間みたいなことができる。
ipfs をクラスターモードで VPS や公開サーバに入れてサーバ代わりにして、自分はそこに接続することで自分のグローバル IP を隠すことが割と簡単にできる。らしい。
ipfs より hyp の方が使いやすそうなんだけど、Node.js の Docker (node:buster-slim) で On-the-fly で動かない ... ... ipfs は動いた。
npm でのインストールも簡単だけど、すでに依存の Warn がでてる。ヽ(`Д´)ノウワァァァン
ドキュメントも一見整っているんだけどなぁ。
hyp コマンドと API のコーディング用ドキュメントが一緒になっていたり、Step-by-step で進めても途中から初めて聞く専門用語がサラっとでてくる。
https://hypercore-protocol.org/guides/walkthroughs/
「それではタモリさんの Walkthrough をしてみましょう。どれから始めますか?」
1. ハナモゲラの作成と共有
2. 多国語麻雀でファイルをシェア
3. 空耳アワーで P2P
... ... はい?みたいになってる。
Walkthrough の前にサイト全体を読み込んでおかないとハンズオンでは試せない。ipfs の 1 勝