はじめに
Mastodonは、ユーザー自身のソーシャルネットワークを作成できる人気のオープンソースのマイクロブログプラットフォームです。Mastodonをセルフホストすることで、データの完全なコントロールとインスタンスのカスタマイズが可能になります。本ガイドでは、サーバーの選定から設定まで、VPSにMastodonをインストールする手順を詳しく解説します。
前提条件
始める前に、以下を用意してください。
- Ubuntu 20.04以降を実行しているVPS(オプションについては完全なVPS比較を参照)
- Mastodonインスタンス用のドメイン名
- コマンドラインツールの基本的な理解
VPSプロバイダーの選び方
VPSプロバイダーを選ぶ際は、以下の点を考慮してください。
| プロバイダー | 初期料金/月 | スペック |
|---|---|---|
| Contabo VPS | 5.99 EUR/月 | 4 vCPU, 8 GB RAM, 300 GB SSD |
| Hetzner Cloud | 4.15 EUR/月 | 2 vCPU, 2 GB RAM, 20 GB SSD |
| DigitalOcean | 6 USD/月 | 1 vCPU, 1 GB RAM, 25 GB SSD |
| Vultr | 6 USD/月 | 1 vCPU, 1 GB RAM, 25 GB SSD |
| Linode | 5 USD/月 | 1 vCPU, 1 GB RAM, 25 GB SSD |
このガイドでは、価格とパフォーマンスのバランスを考慮し、ContaboまたはHetzner Cloudを推奨します。
ステップ1:初期セットアップ
-
新しいVPSインスタンスを作成:希望するプロバイダーを選び、最小限のUbuntuインストールを行ったインスタンスを設定。
-
システムを更新:SSHでVPSに接続し、以下のコマンドを実行。
sudo apt update sudo apt upgrade -y -
必要なパッケージをインストール:
sudo apt install -y git curl wget build-essential
ステップ2:DockerとDocker Composeのインストール
MastodonはDockerコンテナ内で動作するため、インストールと管理が容易です。
-
Dockerのインストール:
curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh -
Docker Composeのインストール:
sudo apt install -y python3-pip sudo pip3 install docker-compose
ステップ3:Mastodonリポジトリのクローン
次に、Mastodonリポジトリをクローンし、ディレクトリに移動します。
git clone https://github.com/mastodon/mastodon.git ~/.mastodon
cd ~/.mastodon
ステップ4:環境変数の設定
新しい設定ファイルを作成し、自分の情報を入力します。
cp .env.production.sample .env.production
nano .env.production
ドメインやメールなど必要な設定を記入してください。
ステップ5:依存関係のインストール
MastodonアプリをビルドするためにNode.jsやYarnなどの依存関係をインストールします。
-
Node.jsのインストール:
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash - sudo apt install -y nodejs -
Yarnのインストール:
npm install --global yarn -
Ruby依存関係のインストール:
sudo apt install -y gcc libpq-dev libjpeg-dev libxml2-dev libxslt1-dev -
Bundlerのインストール:
sudo gem install bundler -
gemsのインストール:
bundle install
ステップ6:データベースの設定
MastodonはPostgreSQLを使用します。新しいデータベースとユーザーを作成します。
-
PostgreSQLのインストール:
sudo apt install -y postgresql postgresql-contrib -
データベースユーザーとデータベースの作成:
sudo -u postgres createuser mastodon
sudo -u postgres createdb mastodon_production --owner=mastodon
- パスワードの設定:
PostgreSQLプロンプトを開きます。
sudo -u postgres psql
次に、以下を実行してパスワードを設定(<yourpassword>は自分の設定したものに置き換えてください)。
ALTER USER mastodon PASSWORD '<yourpassword>';
ステップ7:Dockerを使ったMastodonの起動
次に、Docker Composeを使ってMastodonを起動します。
docker-compose build
docker-compose up -d
ステップ8:Nginxの設定
Nginxをリバースプロキシとして設定し、リクエストをMastodonに転送します。
-
Nginxのインストール:
sudo apt install -y nginx -
設定ファイルの作成:新しい設定ファイルを作成。
sudo nano /etc/nginx/sites-available/mastodon以下を貼り付けます。
server { listen 80; server_name yourdomain.com; location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } -
設定を有効化:
sudo ln -s /etc/nginx/sites-available/mastodon /etc/nginx/sites-enabled/ -
Nginxの再起動:
sudo systemctl restart nginx
ステップ9:インストールの完了
すべて正常に動作しているか確認します。
docker-compose logs
ウェブブラウザであなたのMastodonインスタンスにアクセスし、セットアップを完了させてください。
よくある質問
1. VPSにMastodonをセルフホストするといくらかかりますか?
費用は選ぶプロバイダーやプランによります。例として、Contabo VPSは月額5.99 EURから始まり、Hetzner Cloudは月額4.15 EURからです。高負荷が予想される場合は、CPUやRAMを重視したプランを選びましょう。
2. 1つのVPSで複数のMastodonインスタンスをホストできますか?
はい、可能です。ただし、リソースの管理には注意が必要です。各インスタンスには独自のデータベースが必要で、多くの場合リソースも多く消費します。十分なCPUパワーとRAMを持つVPSを選んでください。
3. インストール後にMastodonのカスタマイズは可能ですか?
もちろんです!Mastodonは高いカスタマイズ性を持ち、テーマの変更や新機能の追加、管理ダッシュボードによるユーザー管理も簡単にできます。特定のコミュニティニーズに合わせてコンテンツモデレーションツールやプラグインの導入も行えます。
このガイドに従えば、自分のVPSでMastodonをセルフホストし、ソーシャルネットワーキングのコントロールとカスタマイズを深めることができるでしょう。 --- END ---