{
"$type": "site.standard.document",
"canonicalUrl": "https://blog.nove-b.dev//posts/mastodon-solo-server-setup/index",
"description": "サーバーの知識0でなんとかサーバー立ち上げまでこぎつけた",
"path": "/posts/mastodon-solo-server-setup/index",
"publishedAt": "2024-10-19T00:00:00.000Z",
"site": "at://did:plc:2atly2y5kfyjcj5zap6pv4wd/site.standard.publication/3mmxeqr2tcb2k",
"tags": [
"Mastodon",
"サーバー",
"VPS"
],
"textContent": "おひとり様サーバーに憧れる\n\n2023年の11月。\n\nつまりおおよそ1年前からMastodonを使用してきた。\n\nハロー・ワールドという本を読み、オープンソースのSNSという響きに憧れ開始した。\n\nそのレベルの解像度なので何も考えずに有名で汎用的なhttps://fedibird.com/にお邪魔させてもらってきた。\n\nそれから1年経ち、なんだかんだ呟いたりしているうちに、自分のサーバーを持ちたくなった。\n\nサーバーの立ち上げに興味を持つ\n\nいままでいくつかサービスを公開してきた。\n\n- vercel\n- firebase\n- aws\n- cloud run\n\n上記のようなサービスを使ってきたが、vercel、firebaseはgithubにデプロイするだけでサイトが公開されるし、awsとcloud runはコピペするだけでなんとか乗り切ってきた。\n\nつまりサーバー何もわからない、エンジニアなのに。\n\nこれじゃいけないということで、vpsを借りて好き勝手出来る環境を作ってみようと思い立ち、それならMastodonを運用するのがいいじゃないかと天啓をひらめいた。\n\n思い立ったが吉日、vpsを借りて立ち上げてみた。\n\nMastodonをエックスサーバーVPSで立ち上げる\n\nそもそも必要な要件がわからない\n\nvpsを選ぶうえでいくつか候補があったけど、過去のブログでレンタルサーバーとしてお世話になったエックスサーバーを使うことにした。\n\n前述したとおり、サーバー何もわからないので、「メモリ」「vCPU」「NVMe\nSSD」とかどのくらいを選べば適正に運用できるかがわからない。\n\n調べてもよくわからないので、運用しつつ見定めていくことにした。\n\nということでとりあえず最小の2GBプランにしてみる。\n\n2GBプランは\n\n- メモリ 2GB\n- vCPU 3コア\n- NVMe SSD 50GB\n\nそれぞれ簡単に調べてみた感じ、\n\nとのこと。\n\nうーん、メモリとCPUの違いがよくわからない、いつか誰かに教えてもらいたい。\n\nドメインを用意しておく\n\nよくわからないけどvpsは契約したので、次はドメインを作成する。\n\nこのブログもサブドメインで運用しているので、同じようにサブドメインを作成し運用することにした。\n\nCloudflare Registrarでサブドメインを作成する。\n\nドメインのページに行き、DNS 管理で\n\n| タイプ | 名前 | コンテンツ | プロキシステータス | TTL |\n| ------ | ------ | ------------------- | ------------------ | ---- |\n| A | social | VPS情報のIPアドレス | DNSのみ | 自動 |\n\nのように登録する。\n\nちなみにプロキシステータスが何かよくわかないけど、のブログはDNSのみに設定されていたので合わせた。\n\nプロキシ済みにすると\n\n> この動作により、Cloudflare はアプリケーションへのすべてのリクエストを最適化、キャッシュ、保護できるだけでなく、オリジンサーバーをDDoS 攻撃から保護できます ↗。\n\nとのことらしく、どうしてDNS のみにしたんだろうと過去のブログを検索するとNetlifyは\n\n> プロキシステータスをDNS のみ にすることでNetlifyのSSL証明書が正常に機能するようになるらしい。\n\nという経緯があったらしい。忘れていた。\n\n後日これを書いている時、これを機にMastodonのほうをプロキシ済みにしよう安全だし、と思い変更したらサイトが落ちた。\n\nつまりDNSのみじゃないといけないらしい。\n\nそんなこんなでドメインの作成までが完了した。\n\nMastodonをインストールしていく\n\n基本的に、公式が丁寧すぎるので従っていけば問題なく表示できる。\n\nMastodonアプリイメージを利用する\n\nただ初心者過ぎていくつか詰まったのでそこだけまとめておく。\n\n公式の方法でサーバーに接続できないのでvsCodeを使用した\n\nVPS管理画面のコンソールかTera Termを使ってサーバーに接続しファイルの編集とかを行う必要があるのだが、慣れてなさすぎてファイルの編集が難しいということでvsCodeから接続することにした。\n\nRemote - SSHという拡張機能を使い接続する。\n\nリモートエクスプローラーを開き歯車からC:\\Users\\{username}\\.ssh\\configを開き、\n\nのように記述すればリモート接続できるようになった。\n\nこれでvsCodeでコードの編集とかをできるようになる。\n\n結果的に便利になった気がするので良かった。\n\nGmailのSMTPが使えなくなっていた\n\n> 2024年9月30日よりGmailのSMTPサーバー(smtp.google.com)でパスワードを利用した認証が利用できなくなる\n\nとのこと。\n\nパスワードを利用した認証っていうのがよくわからないけど、うまくいかなかったので今回はメールを使用しないことにした。\n\nどんな不便が発生するかわからないけど、おひとり様サーバーなのでいらないはず。\n\nAdminっていうユーザー名にしてしまった。\n\n管理者を作りますかという質問に脳死で答えていたら、\n\nhttps://social.nove-b.dev/@admin\n\nというユーザー名にしてしまった。\n\n別にいいんだけれどダサいので変更したい。\n\n上記で無事変更できた。\n\nおひとり様サーバーデビュー\n\n!実際の画像\n\n運用していく、楽しみもあるけど、不安も多い。\n\nともかくデビューには成功した。\n\n@nove_b@social.nove-b.dev\n\nもしかするとサーバーが崩壊してすぐにいなくなるかもしれないですが、もしよろしければフォローしてください。",
"title": "マストドンでおひとり様サーバーを立ち上げた"
}