ぺやろぐ

ぺやろぐ

焼きそばよりチャーハンが好き。

【管理者設定含み】さくらのスタートアップスクリプトでMastodonのインスタンスを作った話

スポンサーリンク

Linuxと呼ぶか、CentOS(もしくはUbuntu)と呼ぶか悩みます。
ぺやんぐ(@peyangu485)です。

今回は、さくらのスタートアップスクリプトを使用してMastodonのインスタンスを作った話をしようと思う。
これから、同じ手段でインスタンスを作ろうとしている人の助けになれば幸いである。




◆導入

まず、下記のサイトでさくらインターネットのアカウントを作成する。

www.sakura.ad.jp

次に、独自ドメインを取得する。
私は、お名前.comで作成した。

基本的にはさくらのインターネットの導入の記事の通りにすれば、導入はできるが私は2か所ほど詰まったのでそのあたりも含めてこちらでまとめようと思う。

cloud-news.sakura.ad.jp


手順1:さくらのクラウドでDNSゾーンを作成する

手順1に関しては、上記の導入記事の通り進めば問題ない。
ゾーン名には先ほど取得した独自ドメインを設定する。
例:abcd.comを取得した場合は、「abcd.com」をゾーン名にする。

他の項目に関しては、任意なので適当に入力。


手順2:独自ドメインを取得した側のネームサーバーの設定を変更する

ここが第1の詰まりポイント。
上記の導入記事で言うと、「追加したゾーンの詳細画面に~」の部分。

なんか日本語怪しい。

ここが理解できなくて詰んでた。

で、どういうことかというと、以下のことであった。

例としてお名前.comで話を進める。

1.お名前.comにログインする 2.会員ページの「ドメイン設定」のページを開く。

3.「ネームサーバーの変更」をクリックし、ネームサーバーの変更ページに移動する

4.真ん中の方に取得したドメインが書かれていると思うので、左側のチェックボックスをONにしてから、下の「登録情報は正しいので、手続きを進める」をクリック

5.すると、「お名前.com各サービスを利用」と「他のネームサーバーを利用」のタブが選択できるようになる 6.「他のネームサーバーを利用」のタブに移動する。

7.「プライマリネームサーバー」にDNSゾーンの詳細画面の「ns1.gslb4~」をコピペ
「セカンダリネームサーバー」に「ns2.gslb4~」をコピペし、「確認画面へ進む」ボタンを押して、次のページへ移動する

8.あとはページの指示通りに進めて、完了になればOK

っていう手順。
知ってる人からすると、どうってことないんだろうけど、これには困った。


手順3:APIキーの作成

これも導入記事の手順通りで問題ない。
名前は自分が分かる名前ならなんでもいい。

ACCESS TOKENとACCESS TOKEN SECRETはメモ帳などにコピペしておくと良い。


手順4:サーバーの作成

これも導入記事の手順通りで問題ない。

スタートアップスクリプトのラジオボタンが「なし」になっている場合は、「Shell」に変更すれば「Mastodon」が選択できるようになる。

作成が完了したら、30分ほど待つ。
これで、サーバー自体の設定は完了する。

その間に、お名前.comからネームサーバー情報変更完了通知メールが来ているとスムーズにいく。
来ていない場合は、メールが来るまで待機。

1回目は7時間ぐらい後にメールが来ていた。(メールが来る前にサイト確認して、ダメかぁってなってサーバー消しちゃったんだよね……)
2回目は10分ぐらいでメールが来たので、タイミング次第な感じ。

メールが届いて、サイトにアクセスしてMastodonのスタートぺージが表示されれば成功!


手順5:アカウントの作成~ログイン

手順かと言われると違うかもしれないけど、この後のことも書いておきたいので手順の1つとしておく。

メールアドレス、アカウント名、パスワードを入力しアカウントを作成する。

メールを確認し、認証を完了する。(Gmailだと迷惑フォルダに振り分けられてた)

これでログインができるようになる。


手順6:自分のアカウントを管理者にする

ここが最難関だった気がする。

前提として、今回のスタートアップスクリプトではdockerやdocker-composeのインストールは行われていない。

Google等で「Mastodon 管理者」で調べるとdockerがインストールされていることが前提の記事が多い。
前提にも書いた通り、今回のスタートアップスクリプトではインストールされていないため、docker上で動いているわけではない。(たぶん)

なので、dockerやdokcer-composeを自力でインストールしたところで検索上位に出てくる記事のやり方では管理者に設定できない。(たぶん)

「もう、だめだぁ……。おしまいだぁ……。」

と嘆いていたところ、ある記事を見つけた。

fmty.hateblo.jp

神か!!!

はてなスターが付けられるなら10個ぐらい付けてると思う。(あまりやりすぎて迷惑になったら困るので10個ぐらいに抑えるという意味)

上記の記事の「管理者になろう」の部分

su - mastodon #マストドンユーザーでログイン
cd ./live/bin/
RAILS_ENV=production bundle exec rails mastodon:make_admin USERNAME=fmty

3行目の「USERNAME=」以降を自分のアカウント名に変更し、3行をコピーしてコンソール(※1)に貼り付けてEnterをタッーン!しましょう。

1行目で「mastodon」ユーザーでログインし、2行目で現在参照しているフォルダを「live/bin」に移動し、3行目で指定したアカウントを管理者に設定する。
という流れ。

これで、再度Mastodonの方でログインし直すと、設定画面に「管理」の項目が追加されているはず。

以上、さくらのスタートアップスクリプトでMastodonのインスタンスを作って管理者の設定まで行った話でした!

※1:コンソールの開き方・・・さくらのクラウドで手順4で作成したサーバーの詳細(右上にある)を開く、その中の「情報」「NIC」などのタブの一番右側の「コンソール」を開くと、コンソール画面が出てくる。最初に「root」ユーザーでログイン。(パスワードはサーバーの作成時に設定したパスワード)
そのあとに上記のコマンドを入力する流れ。



◆まとめ

いやぁ、途中何回諦めようかなと思ったことか……。

勉強も兼ねて一通りやろうと思ったのと、「こういうインスタンスあったらおもしろいな」ってネタがあったからやれた。

本当にこのまま公開しても大丈夫なのかの確認のためにまだ、アドレスは公開しないけど。
公開したら、ブログとツイッターで報告する予定。

公開しました。

https://mastodon-robamimi.club/

「そこまで熱意ねーわ」って人は「jp」とかにアカウント作るでいいと思うよ。
これ作るのにお金かかってるしね。

次は、AWS上に自力でインスタンスを作るかなぁ。
docker入れて。