AWSでMastodonインスタンスを立てる
やること
- AWS周りの設定
- Mastodonインスタンスの構築
前提
- AWSアカウントがある
- CUIが扱える
- 独自ドメインがある
当記事では、以下で構築します
- AWS ルートユーザー(12ヶ月無料期間中)
- 非Docker
- Mastodon v3.1.4
- メールサーバー非構築
実際にやってみる
AWS EC2インスタンスを作成
下記URL通りに基本進めていく
下記URLの説明と違う点
- Ubuntu 18.04 LTS を選択
- スペック選択は「無料期間枠の対象」となっているものを選択
※ここらへんのスペック周りは自分の好きなものをどうぞ
※無料期間枠の対象通りに立てると結構サーバーギリギリです
SSHログイン
今回はめんどくさかったので、Windows Terminal でログイン。
Powershell で鍵のあるディレクトリに移動しログイン。
Mastodon 構築
基本的に公式ドキュメント通り
https://docs.joinmastodon.org/admin/install/
公式ドキュメント通りに curl
nodejs
yarn
を導入。
"System packages"を導入する際、apt install -y \ ...
でちゃんと導入できなかったら、1個1個順番に入れてください。
1個でも抜けると動きません(←抜けてて動かなかった人)
公式ドキュメント通りに Ruby
導入。mastodon
というユーザーを作る。
公式ドキュメント通りにデータベースをつくる。
公式ドキュメント通りに行くと、Mastodon を clone するが、独自にGitで管理しながらいろいろ書き換えたいのならばフォークしておき、フォークからcloneすることをおすすめする。
clone 後もドキュメント通りに進めるが、
bundle config deployment 'true'
bundle config without 'development test'
bundle install -j$(getconf _NPROCESSORS_ONLN)
yarn install --pure-lockfile
上記の yarn install
で注意。
ドキュメント通りに nodejs v12.xを入れていないとココでエラーを吐く。
吐いたときはこれで解決するので試してほしい。
yarn install時に、error : The engine "node" is incompatible with this module.
yarn install
が終わったら、Mastodon のセットアップウィザードを起動させる。
ここは質問どおりに答えていけばいいだけだ。
終わり次第、公式ドキュメント通りにユーザーを切り替え nginx
Let’s Encrypt
の設定を済ませる。
そして公式ドキュメント通りに進み、最後。
systemctl daemon-reload
systemctl start mastodon-web mastodon-sidekiq mastodon-streaming
systemctl enable mastodon-*
最後 systemctl enable mastodon-*
はおそらく動かないと思うので一つ一つ指定してあげよう。
例:systemctl enable mastodon-web
上記コマンドで構築自体は終了。
ちなみに動かなかったときは sudo をつければなんとかなる。
設定したドメインに行くとアカウントの登録ができる。
アカウント周り
Mastodonのセットアップウィザード時に、SMTPサーバー等の設定をしていない人はおそらくアカウント作成してもメールが届かない。
また、シングルユーザモードで利用する人はあえてサーバーを作っていない人もいると思う。
そういったときは
ubuntu $ sudo su - mastodon
mastodon $ cd live
mastodon $ RAILS_ENV=production bundle exec bin/tootctl accounts create [USERNAME] [OPTIONS]
OK
New password: [AUTO_GENERATED_PASSWORD]
これでアカウントの作成ができる。
コマンドについてはコチラを参照→ mastodon コマンド備忘録
もちろん、ログインできたらパスワードは変えようね!
インスタンスの設定
インスタンス自体は立っているが、現状初期設定だ。なので色々変える。
まず、Mastodonにadmin権限のあるアカウントでログイン。
ユーザー設定 > 管理を開くといろいろと設定が出てくる。
- ダッシュボード : だいたいのことが分かる
- サイト設定 : インスタンスの名前などaboutページに表示される内容を編集できる
- お知らせ : お知らせを掲載できる。(後術)
- カスタム絵文字 : カスタム絵文字を追加できる(後術)
- リレー : 連合リレーの設定(後術)
管理 > お知らせ
インスタンスのお知らせを掲載できる。
初心者UIの場合ヘッダーに、上級者UIの場合、ホームタブの上部ボタンから見ることができる。
friends.nicoやBestFriendsにあるトゥート欄の下のお知らせではない。
管理 > 連合リレー
おそらく初期設定のままだと、連合TLが一切流れてこないだろう。
他インスタンスのTLを流すには連合リレーの設定が必要。
いろいろ探してみてください
管理 > カスタム絵文字
カスタム絵文字を登録できます。
連合リレーを登録した後だと、他インスタンスの絵文字がたくさん表示されますが、使うことはできないのでご注意を。
お疲れさまでした。ここまでで一通り完了です。
おわりに
実際に運用していくと重たくなったりいろいろと問題が出てきますが、ググればだいたい出てくるのでググってください。
今後も楽しいマストドンライフを。
Author And Source
この問題について(AWSでMastodonインスタンスを立てる), 我々は、より多くの情報をここで見つけました https://qiita.com/nekozuki_dev/items/2058dbee6293b4c93ff9著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .