mizzkey/docs/setup.ja.md
MeiMei 951288ecf0 docs to run in production mode (#4347)
* run in production mode from systemd

* NODE_ENV=production npm run build

* npm start
2019-02-22 14:18:05 +09:00

5 KiB
Raw Blame History

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の設定

ルートで:

  1. mongo mongoシェルを起動
  2. use misskey misskeyデータベースを使用
  3. db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } ) misskeyユーザーを作成
  4. exit mongoシェルを終了

4. Misskeyのインストール

  1. su - misskey misskeyユーザーを使用
  2. git clone -b master git://github.com/syuilo/misskey.git masterブランチからMisskeyレポジトリをクローン
  3. cd misskey misskeyディレクトリに移動
  4. git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1) 最新のリリースを確認
  5. npm install Misskeyの依存パッケージをインストール

5. 設定ファイルを作成する

  1. cp .config/example.yml .config/default.yml .config/example.ymlをコピーし名前をdefault.ymlにする。
  2. default.yml を編集する。

6. Misskeyのビルド

次のコマンドでMisskeyをビルドしてください:

NODE_ENV=production npm run build

Debianをお使いであれば、build-essentialパッケージをインストールする必要があります。

何らかのモジュールでエラーが発生する場合はnode-gypを使ってください:

  1. npm install -g node-gyp
  2. node-gyp configure
  3. node-gyp build
  4. NODE_ENV=production npm run build

7. 以上です!

お疲れ様でした。これでMisskeyを動かす準備は整いました。

通常起動

NODE_ENV=production npm startするだけです。GLHF!

systemdを用いた起動

  1. systemdサービスのファイルを作成: /etc/systemd/system/misskey.service
  2. エディタで開き、以下のコードを貼り付けて保存:
[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に変更する必要があります。

  1. systemctl daemon-reload ; systemctl enable misskey systemdを再読み込みしmisskeyサービスを有効化
  2. systemctl start misskey misskeyサービスの起動

systemctl status misskeyと入力すると、サービスの状態を調べることができます。

Misskeyを最新バージョンにアップデートする方法:

  1. git fetch
  2. git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)
  3. npm install
  4. NODE_ENV=production npm run build
  5. ChangeLogでマイグレーション情報を確認する

なにか問題が発生した場合は、npm run cleanすると直る場合があります。


なにかお困りのことがありましたらお気軽にご連絡ください。