Pleromaの鯖を生やした
※爆破済み。
なんで?
わからないです…なんででしょう?気づいたらインストールバトルを始めていました。
強いて言えばMisskeyの相互の方が購入したドメインでMastodonの鯖を生やしていたのを見たからでしょうか…
今回(というかいつも)借りて使用しているのはこのはたむが可愛いことでお馴染みのconohaVPSのRAM1GBのでした。
さらに一回りスペックが低いのでもいけるらしいのですが,512MBはなんとなく心許ない気がしたので…
クソザコオタクくんなのでOSは無難にUbuntuで。
最初は公式の手順通りに頑張ろうとしたのですが、コマンドの呪文っぷりに宇宙猫の顔つきになってしまったので、Docker
でサクッと建てる方向に逃げました。
Docker Composeで楽をする。
Dockerを使えるようにする。
https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository
公式の手順通りにコピペやってDocker
を入れます。
一応下記の通りになります。
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
で入るはず。
後はdocker --version
とdocker compose version
でそれぞれversion確認を行いつつ、きちんとインストールできたかを確認しておきました。
Pleromaを建てようとする。
git clone https://github.com/explodingcamera/docker-pleroma
でDocker
でサクッと建てられるものを用意してくれている神に圧倒的感謝をしつつ失敬します。
cd docker-pleroma
でディレクトリ移動してdocker-compose.yaml
を弄ります。
最低限必要なのはChangeMe!
と強調されたDBのパスワードと後悔公開予定のドメインへの書き換えでしょうか。
私はこれに加えてimage: ghcr.io/explodingcamera/pleroma:stable
のstable
をlatest
に書き換えました。
これで最新verのが使えるはず。私が建てた時は2.6.1
でしたが、この記事を書いてる今は最新の2.6.2
になるようです。
同ディレクトリ内のcustom-config.exs
も弄ります。
ドメインを同じく公開予定のドメインに書き換えておきます。
また、config :pleroma, configurable_from_database: true
を1行追加しておきます。
これを入れておくと管理者アカウントでadmin-fe
使えるようになります。
後はsudo docker compose up -d
を実行すれば、終わり。まぁこの状態だとまだアクセスはできないんですけど…
Cloudflare Tunnelを使ってみる。
タ イ ト ル 回 収。
普段であれば、証明書の発行と公式のサンプルをコピペしてnginx
の設定をしたりするのですが、
この辺りの過程をすっ飛ばして公開できるらしいので、これを機に使ってみることにしてみました。
Cloudflaredを入れる。
wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
sudo dpkg -i cloudflared-linux-amd64.deb
で、cloudflared
をインストールしておきます。
次にcloudflared login
と入力するとURLが表示されそれにアクセスして公開予定のドメインを選択して許可します。
Cloudflare Tunnelをつくる。
Zero trus
をクリック。初回だとチーム名を決めてくれだの、料金プランだの言われるのでなんとかしておいてください。
一通り終わったらNetwork
のTunnels
をクリックします。
Select your connector
では先ほど入れたCloudflared
を選択します。Next
で先を進み、適当に名前をつけろと言われるのでわかりやすいのをいれておきます。
今回は無難にpleroma
としておきました。
Choose your environment
では、自鯖はUbuntu
なのでDebian
を。また64-bitなのでそちらも選択。Install and run a connector
ではcloudflared
をインストール済みなので、If you already have cloudflared installed on your machine:
の方を使用します。
ご丁寧にコピペしてくれと言わんばかりのアイコンがありますのでありがたく使わせてもらいましょう。
コピペしたコマンドを走らせたら、再びNext
を押して先へ進みます。Public hostname
には必要に応じてSubdomain
を入れて、Domain
に公開予定のドメインを選択。Path
は今回は使わないのでパスです。
Service
にはType
にHTTP
を、URL
にはVPSのIP:4000
と入力します。
自宅鯖勢はlocalhost:Port番号
と入れるらしいのですがそれだとアクセスできませんでした(1敗)
終わったらSave tunnel
で終了。多分アクセスできるはず。
アカウントとか設定とか
アクセスして問題ないかを確認してみます。今回は大丈夫でした。
そのままアカウントを作ってもいいのですがadmin
権限がないので以下のコマンドで管理者アカウントを作ります。
sudo docker exec -it pleroma_web ./cli.sh user new <username> <your@emailaddress> --admin
<username>
には作りたい垢のIDを。<your@emailaddress>
はメアドを。そのままですね。
走らせたら、こんな垢ができますがよろしいですか?みたいなことを言われるのでy
を押して作ります。
パスワードリセット画面へ行くURLが表示されるのでそこへアクセスして、パスワードを設定。
その後は設定したIDとパスワードでログインします。
右上のメーターみたいなアイコンからいわゆるコントロールパネル的な画面へ入れます。
今のverだと?簡易的な設定画面が表示されるようです。下部にadmin-fe
のリンクがあるので必要に応じてそちらへ。
Frontend欄にsoapbox
があったのでそちらをインストールしてこちらを使用するように変えました。
ベータ版な上、verも古いのですが…その内必要に応じて最新版を設定しておきましょうかね。
完走した感想
Cloudflare Tunnel使うとすっごく楽ですね。
深夜に意味もなく悪戦苦闘してたのは主に借りた後の初期セットアップがgdgdしてしまったせいで、Pleroma自体はそこまで…
DockerとCloudflareってすごい。まぁTunnelのURL設定でしれっと躓いてるんですけど。
出来上がったのがこちら↓
ひどいドメインしてますね…ついでにTopページのリンクに追加しておきますか。