Twitterがドタバタしているなか、移行先候補の1つとして有力なMisskeyサーバーを自分で立てて運用してみよう、の試みメモ。細かい説明はなく、こうやれば動いたよのレポートです。
Misskeyってなに?はMisskeyの公式ドキュメントページであるMisskey Hubを一読。
っていうかこの記事を読もうって人はそこはもうわかってるはず。
この素敵なSNSをVPS+Cloudflare+Dockerで自分で立ててみようというお話です。
(ちなみにすでにこの手の情報も溢れかえっていますね。)
今回の記事の前提
- Global IPを持つVPSを契約済み
使用しているのはKAGOYA CLOUD VPSさんの2コア/2GB/200GBです。
880円(税込)/月。安い。 - Cloudflareでドメインを取得済み
必須ではないですが、買ったほうが楽。 - VPS上のOSにDocker(Docker Compose)を導入済み
OSとDockerのバージョンは以下の通り。
$ cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.2 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.2 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
$ sudo docker version
Client: Docker Engine - Community
Version: 24.0.2
API version: 1.43
Go version: go1.20.4
Git commit: cb74dfc
Built: Thu May 25 21:51:00 2023
OS/Arch: linux/amd64
Context: default
Server: Docker Engine - Community
Engine:
Version: 24.0.2
API version: 1.43 (minimum version 1.12)
Go version: go1.20.4
Git commit: 659604f
Built: Thu May 25 21:51:00 2023
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.21
GitCommit: 3dce8eb055cbb6872793272b4f20ed16117344f8
runc:
Version: 1.1.7
GitCommit: v1.1.7-0-g860f061
docker-init:
Version: 0.19.0
GitCommit: de40ad0
構成の概要
今回のVPSではDockerを使用してMisskey以外のサービスも動かしているので
以下のような構成を目指します。
- CloudflareとVPS間はLet’s Encryptを使用してSSL化する
- VPS内はnginx proxyを使用してサブドメインでサービスを振り分ける
- MisskeyのオブジェクトストレージはCloudflare R2を使用する
- 使用するドメインは
fullstuckengineer.com
として記載
適宜あなたが所有するドメインに読み替えてください
記事の構成
以下のように4章立てで書きました。書いたあとに「最初にCloudflare側の設定を終わらせておいてもよかったかな」って思ったのでうまく読み替えてもらえると。
- VPS上にnginx proxy + Let’s Encrypt のコンテナを立てる
- Misskeyコンテナを立てて公開する
- Misskeyの設定(オブジェクトストレージ)
- Misskeyの設定(プッシュ通知)
メールサーバーの設定も入れ込みたかったけれど、気が向いたらそのうち書きます。
コメント