misskey/docs/setup.ja.md

167 lines
5.5 KiB
Markdown
Raw Normal View History

2017-05-18 15:52:50 +00:00
Misskey構築の手引き
================================================================
Misskeyサーバーの構築にご関心をお寄せいただきありがとうございます
このガイドではMisskeyのインストール・セットアップ方法について解説します。
[英語版もあります - English version also available](./setup.en.md)
----------------------------------------------------------------
2018-07-15 00:43:16 +00:00
*1.* Misskeyユーザーの作成
2017-05-18 15:52:50 +00:00
----------------------------------------------------------------
2018-09-10 09:32:51 +00:00
Misskeyはrootユーザーで実行しない方がよいため、代わりにユーザーを作成します。
2018-07-15 00:43:16 +00:00
Debianの例:
2018-07-15 00:43:16 +00:00
```
adduser --disabled-password --disabled-login misskey
```
2018-03-27 03:55:58 +00:00
*2.* 依存関係をインストールする
2017-05-18 15:52:50 +00:00
----------------------------------------------------------------
これらのソフトウェアをインストール・設定してください:
#### 依存関係 :package:
2018-11-05 01:48:40 +00:00
* **[Node.js](https://nodejs.org/en/)** (10.0.0以上)
2018-07-15 05:20:30 +00:00
* **[MongoDB](https://www.mongodb.com/)** (3.6以上)
2017-05-18 15:52:50 +00:00
##### オプション
2018-10-11 06:50:27 +00:00
* [Redis](https://redis.io/)
2018-10-11 09:18:15 +00:00
* Redisはオプションですが、インストールすることを強く推奨します。
* インストールしなくていいのは、あなたのインスタンスが自分専用のときだけとお考えください。
2018-10-11 09:20:27 +00:00
* 具体的には、Redisをインストールしないと、次の事が出来なくなります:
2018-10-11 09:18:15 +00:00
* Misskeyプロセスを複数起動しての負荷分散
* レートリミット
2019-02-05 05:25:03 +00:00
* ジョブキュー
2018-10-11 09:18:15 +00:00
* Twitter連携
* [Elasticsearch](https://www.elastic.co/)
2018-10-11 09:20:27 +00:00
* 検索機能を有効にするためにはインストールが必要です。
2019-02-05 05:24:10 +00:00
* [FFmpeg](https://www.ffmpeg.org/)
2017-05-18 15:52:50 +00:00
2018-07-23 11:48:55 +00:00
*3.* MongoDBの設定
2018-04-02 02:32:27 +00:00
----------------------------------------------------------------
2018-07-15 00:43:16 +00:00
ルートで:
1. `mongo` mongoシェルを起動
2. `use misskey` misskeyデータベースを使用
2019-02-02 19:50:40 +00:00
3. `db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } )` misskeyユーザーを作成
4. `exit` mongoシェルを終了
2018-07-15 00:43:16 +00:00
*4.* Misskeyのインストール
----------------------------------------------------------------
1. misskeyユーザーを使用
`su - misskey`
2. masterブランチからMisskeyレポジトリをクローン
`git clone -b master git://github.com/syuilo/misskey.git`
3. misskeyディレクトリに移動
`cd misskey`
4. [最新のリリース](https://github.com/syuilo/misskey/releases/latest)を確認
```bash
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
```
5. Misskeyの依存パッケージをインストール
`npm install`
2018-07-15 00:43:16 +00:00
2018-07-18 15:04:09 +00:00
*5.* 設定ファイルを作成する
2018-03-25 11:19:32 +00:00
----------------------------------------------------------------
1. `.config/example.yml`をコピーし名前を`default.yml`にする。
`cp .config/example.yml .config/default.yml`
2018-07-15 00:43:16 +00:00
2. `default.yml` を編集する。
2017-05-18 15:52:50 +00:00
2018-07-18 15:04:09 +00:00
*6.* Misskeyのビルド
2018-04-02 02:32:27 +00:00
----------------------------------------------------------------
2018-07-15 00:43:16 +00:00
次のコマンドでMisskeyをビルドしてください:
`NODE_ENV=production npm run build`
2018-07-15 00:43:16 +00:00
Debianをお使いであれば、`build-essential`パッケージをインストールする必要があります。
何らかのモジュールでエラーが発生する場合はnode-gypを使ってください:
2018-05-23 10:00:23 +00:00
1. `npm install -g node-gyp`
2. `node-gyp configure`
3. `node-gyp build`
4. `NODE_ENV=production npm run build`
2017-05-18 15:52:50 +00:00
2018-07-18 15:04:09 +00:00
*7.* 以上です!
2017-05-18 15:52:50 +00:00
----------------------------------------------------------------
お疲れ様でした。これでMisskeyを動かす準備は整いました。
2018-07-15 00:43:16 +00:00
### 通常起動
`NODE_ENV=production npm start`するだけです。GLHF!
2018-07-15 00:43:16 +00:00
### systemdを用いた起動
1. systemdサービスのファイルを作成
`/etc/systemd/system/misskey.service`
2018-07-15 00:43:16 +00:00
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`に変更する必要があります。
2018-07-15 00:43:16 +00:00
3. systemdを再読み込みしmisskeyサービスを有効化
`systemctl daemon-reload ; systemctl enable misskey`
4. misskeyサービスの起動
`systemctl start misskey`
2018-07-15 00:43:16 +00:00
`systemctl status misskey`と入力すると、サービスの状態を調べることができます。
2017-05-18 15:52:50 +00:00
2018-04-02 02:34:35 +00:00
### Misskeyを最新バージョンにアップデートする方法:
2018-07-15 00:43:16 +00:00
1. `git fetch`
2.  
```bash
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
```
2018-07-15 00:43:16 +00:00
3. `npm install`
4. `NODE_ENV=production npm run build`
2018-09-01 09:42:46 +00:00
5. [ChangeLog](../CHANGELOG.md)でマイグレーション情報を確認する
2018-05-07 19:04:18 +00:00
2019-03-12 04:26:26 +00:00
なにか問題が発生した場合は、`npm run clean`または`npm run cleanall`すると直る場合があります。
2019-02-14 20:58:09 +00:00
2018-07-24 19:15:22 +00:00
----------------------------------------------------------------
なにかお困りのことがありましたらお気軽にご連絡ください。