* Doc: Update setup documents Use GitHub api to checkout latest release instead of "git tag" command which cannot accurately determine prerelease tag. Also, Changed numbered list format because the shell command is too long to fit on one line. Conflicts: docs/docker.en.md docs/docker.fr.md docs/docker.ja.md docs/setup.en.md docs/setup.fr.md docs/setup.ja.md * Doc: Checkout 10.x tag only Update "checkout latest release" command. Checkout latest tag but 10.x tag only. * Doc: Restore MongoDB * Use tab instead of spaces
5.5 KiB
Misskey構築の手引き
Misskeyサーバーの構築にご関心をお寄せいただきありがとうございます! このガイドではMisskeyのインストール・セットアップ方法について解説します。
英語版もあります - English version also available
1. Misskeyユーザーの作成
Misskeyはrootユーザーで実行しない方がよいため、代わりにユーザーを作成します。 Debianの例:
adduser --disabled-password --disabled-login misskey
2. 依存関係をインストールする
これらのソフトウェアをインストール・設定してください:
依存関係 📦
オプション
- Redis
- Redisはオプションですが、インストールすることを強く推奨します。
- インストールしなくていいのは、あなたのインスタンスが自分専用のときだけとお考えください。
- 具体的には、Redisをインストールしないと、次の事が出来なくなります:
- Misskeyプロセスを複数起動しての負荷分散
- レートリミット
- ジョブキュー
- Twitter連携
- Elasticsearch
- 検索機能を有効にするためにはインストールが必要です。
- FFmpeg
3. MongoDBの設定
ルートで:
mongo
mongoシェルを起動use misskey
misskeyデータベースを使用db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } )
misskeyユーザーを作成exit
mongoシェルを終了
4. Misskeyのインストール
-
misskeyユーザーを使用
su - misskey
-
masterブランチからMisskeyレポジトリをクローン
git clone -b master git://github.com/syuilo/misskey.git
-
misskeyディレクトリに移動
cd misskey
-
最新のリリースを確認
git tag | grep '^10\.' | sort -V --reverse | \ while read tag_name; do \ if ! curl -s "https://api.github.com/repos/syuilo/misskey/releases/tags/$tag_name" \ | grep -qE '"(draft|prerelease)": true'; \ then git checkout $tag_name; break; fi ; done
-
Misskeyの依存パッケージをインストール
npm install
5. 設定ファイルを作成する
-
.config/example.yml
をコピーし名前をdefault.yml
にする。cp .config/example.yml .config/default.yml
-
default.yml
を編集する。
6. Misskeyのビルド
次のコマンドでMisskeyをビルドしてください:
NODE_ENV=production npm run build
Debianをお使いであれば、build-essential
パッケージをインストールする必要があります。
何らかのモジュールでエラーが発生する場合はnode-gypを使ってください:
npm install -g node-gyp
node-gyp configure
node-gyp build
NODE_ENV=production npm run build
7. 以上です!
お疲れ様でした。これでMisskeyを動かす準備は整いました。
通常起動
NODE_ENV=production npm start
するだけです。GLHF!
systemdを用いた起動
-
systemdサービスのファイルを作成
/etc/systemd/system/misskey.service
-
エディタで開き、以下のコードを貼り付けて保存:
[Unit] Description=Misskey daemon [Service] Type=simple User=misskey ExecStart=/usr/bin/npm start WorkingDirectory=/home/misskey/misskey Environment="NODE_ENV=production" TimeoutSec=60 StandardOutput=syslog StandardError=syslog SyslogIdentifier=misskey Restart=always [Install] WantedBy=multi-user.target
CentOSで1024以下のポートを使用してMisskeyを使用する場合は
ExecStart=/usr/bin/sudo /usr/bin/npm start
に変更する必要があります。 -
systemdを再読み込みしmisskeyサービスを有効化
systemctl daemon-reload ; systemctl enable misskey
-
misskeyサービスの起動
systemctl start misskey
systemctl status misskey
と入力すると、サービスの状態を調べることができます。
Misskeyを最新バージョンにアップデートする方法:
-
git fetch
-
git tag | grep '^10\.' | sort -V --reverse | \ while read tag_name; do \ if ! curl -s "https://api.github.com/repos/syuilo/misskey/releases/tags/$tag_name" \ | grep -qE '"(draft|prerelease)": true'; \ then git checkout $tag_name; break; fi ; done
-
npm install
-
NODE_ENV=production npm run build
-
ChangeLogでマイグレーション情報を確認する
なにか問題が発生した場合は、npm run clean
またはnpm run cleanall
すると直る場合があります。
なにかお困りのことがありましたらお気軽にご連絡ください。