2017-05-17 23:56:23 -06:00
|
|
|
Misskey Setup and Installation Guide
|
|
|
|
================================================================
|
|
|
|
|
2017-11-12 04:25:18 -07:00
|
|
|
We thank you for your interest in setting up your Misskey server!
|
2017-05-18 00:05:48 -06:00
|
|
|
This guide describes how to install and setup Misskey.
|
2017-05-17 23:56:23 -06:00
|
|
|
|
2017-05-18 09:55:06 -06:00
|
|
|
[Japanese version also available - 日本語版もあります](./setup.ja.md)
|
2017-05-17 23:56:23 -06:00
|
|
|
|
2017-05-18 09:52:50 -06:00
|
|
|
----------------------------------------------------------------
|
2017-05-17 23:56:23 -06:00
|
|
|
|
2018-07-14 17:26:23 -06:00
|
|
|
*1.* Create Misskey user
|
2017-05-17 23:56:23 -06:00
|
|
|
----------------------------------------------------------------
|
2018-11-16 06:31:53 -07:00
|
|
|
Running misskey as root is not a good idea so we create a user for that.
|
2018-07-14 17:26:23 -06:00
|
|
|
In debian for exemple :
|
2017-05-17 23:56:23 -06:00
|
|
|
|
2018-07-14 18:43:16 -06:00
|
|
|
```
|
2018-07-14 17:26:23 -06:00
|
|
|
adduser --disabled-password --disabled-login misskey
|
2017-11-22 13:43:00 -07:00
|
|
|
```
|
|
|
|
|
2018-03-26 21:55:58 -06:00
|
|
|
*2.* Install dependencies
|
2017-05-17 23:56:23 -06:00
|
|
|
----------------------------------------------------------------
|
2017-05-18 09:52:50 -06:00
|
|
|
Please install and setup these softwares:
|
2017-05-17 23:56:23 -06:00
|
|
|
|
2017-05-18 09:52:50 -06:00
|
|
|
#### Dependencies :package:
|
2018-11-04 18:48:40 -07:00
|
|
|
* **[Node.js](https://nodejs.org/en/)** >= 10.0.0
|
2018-07-14 17:26:23 -06:00
|
|
|
* **[MongoDB](https://www.mongodb.com/)** >= 3.6
|
2017-05-18 09:52:50 -06:00
|
|
|
|
|
|
|
##### Optional
|
2018-10-11 00:50:27 -06:00
|
|
|
* [Redis](https://redis.io/)
|
|
|
|
* Redis is optional, but we strongly recommended to install it
|
2018-10-17 07:42:45 -06:00
|
|
|
* [Elasticsearch](https://www.elastic.co/) - required to enable the search feature
|
2019-02-04 22:24:10 -07:00
|
|
|
* [FFmpeg](https://www.ffmpeg.org/)
|
2017-05-18 09:52:50 -06:00
|
|
|
|
2018-07-23 05:48:55 -06:00
|
|
|
*3.* Setup MongoDB
|
2018-04-01 20:32:27 -06:00
|
|
|
----------------------------------------------------------------
|
2018-11-16 06:31:53 -07:00
|
|
|
As root:
|
2018-07-14 17:26:23 -06:00
|
|
|
1. `mongo` Go to the mongo shell
|
|
|
|
2. `use misskey` Use the misskey database
|
2019-02-02 12:50:40 -07:00
|
|
|
3. `db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } )` Create the misskey user.
|
|
|
|
4. `exit` You're done!
|
2018-07-14 17:26:23 -06:00
|
|
|
|
|
|
|
*4.* Install Misskey
|
|
|
|
----------------------------------------------------------------
|
|
|
|
1. `su - misskey` Connect to misskey user.
|
|
|
|
2. `git clone -b master git://github.com/syuilo/misskey.git` Clone the misskey repo from master branch.
|
|
|
|
3. `cd misskey` Navigate to misskey directory
|
|
|
|
4. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` Checkout to the [latest release](https://github.com/syuilo/misskey/releases/latest)
|
|
|
|
5. `npm install` Install misskey dependencies.
|
2018-04-01 20:32:27 -06:00
|
|
|
|
2018-11-16 06:31:53 -07:00
|
|
|
*5.* Configure Misskey
|
2018-07-14 17:26:23 -06:00
|
|
|
----------------------------------------------------------------
|
|
|
|
1. `cp .config/example.yml .config/default.yml` Copy the `.config/example.yml` and rename it to `default.yml`.
|
2018-07-14 18:43:16 -06:00
|
|
|
2. Edit `default.yml`
|
2017-05-17 23:56:23 -06:00
|
|
|
|
2018-07-18 09:04:09 -06:00
|
|
|
*6.* Build Misskey
|
2018-04-01 20:32:27 -06:00
|
|
|
----------------------------------------------------------------
|
2018-04-15 04:52:16 -06:00
|
|
|
|
2018-06-01 12:52:47 -06:00
|
|
|
Build misskey with the following:
|
|
|
|
|
2019-02-21 22:18:05 -07:00
|
|
|
`NODE_ENV=production npm run build`
|
2018-06-01 12:52:47 -06:00
|
|
|
|
2018-11-10 22:47:53 -07:00
|
|
|
If you're on Debian, you will need to install the `build-essential`, `python` package.
|
2018-06-01 12:24:30 -06:00
|
|
|
|
2018-06-01 12:52:47 -06:00
|
|
|
If you're still encountering errors about some modules, use node-gyp:
|
2018-06-01 12:24:30 -06:00
|
|
|
|
2018-06-01 12:52:47 -06:00
|
|
|
1. `npm install -g node-gyp`
|
|
|
|
2. `node-gyp configure`
|
|
|
|
3. `node-gyp build`
|
2019-02-21 22:18:05 -07:00
|
|
|
4. `NODE_ENV=production npm run build`
|
2017-05-17 23:56:23 -06:00
|
|
|
|
2018-07-18 09:04:09 -06:00
|
|
|
*7.* That is it.
|
2017-05-17 23:56:23 -06:00
|
|
|
----------------------------------------------------------------
|
2017-05-18 16:49:16 -06:00
|
|
|
Well done! Now, you have an environment that run to Misskey.
|
2017-05-17 23:56:23 -06:00
|
|
|
|
2018-07-14 17:26:23 -06:00
|
|
|
### Launch normally
|
2019-02-21 22:18:05 -07:00
|
|
|
Just `NODE_ENV=production npm start`. GLHF!
|
2018-07-14 17:26:23 -06:00
|
|
|
|
|
|
|
### Launch with systemd
|
|
|
|
|
|
|
|
1. Create a systemd service here: `/etc/systemd/system/misskey.service`
|
|
|
|
2. Edit it, and paste this and save:
|
|
|
|
|
|
|
|
```
|
|
|
|
[Unit]
|
|
|
|
Description=Misskey daemon
|
|
|
|
|
|
|
|
[Service]
|
|
|
|
Type=simple
|
|
|
|
User=misskey
|
|
|
|
ExecStart=/usr/bin/npm start
|
|
|
|
WorkingDirectory=/home/misskey/misskey
|
2019-02-21 22:18:05 -07:00
|
|
|
Environment="NODE_ENV=production"
|
2018-07-14 17:26:23 -06:00
|
|
|
TimeoutSec=60
|
|
|
|
StandardOutput=syslog
|
|
|
|
StandardError=syslog
|
|
|
|
SyslogIdentifier=misskey
|
|
|
|
Restart=always
|
|
|
|
|
|
|
|
[Install]
|
|
|
|
WantedBy=multi-user.target
|
|
|
|
```
|
|
|
|
|
|
|
|
3. `systemctl daemon-reload ; systemctl enable misskey` Reload systemd and enable the misskey service.
|
|
|
|
4. `systemctl start misskey` Start the misskey service.
|
|
|
|
|
|
|
|
You can check if the service is running with `systemctl status misskey`.
|
2017-05-17 23:56:23 -06:00
|
|
|
|
2018-11-16 06:31:53 -07:00
|
|
|
### How to update your Misskey server to the latest version
|
2018-07-14 17:26:23 -06:00
|
|
|
1. `git fetch`
|
|
|
|
2. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)`
|
|
|
|
3. `npm install`
|
2019-02-21 22:18:05 -07:00
|
|
|
4. `NODE_ENV=production npm run build`
|
2018-09-01 03:42:46 -06:00
|
|
|
5. Check [ChangeLog](../CHANGELOG.md) for migration information
|
2019-01-20 04:11:44 -07:00
|
|
|
6. Restart your Misskey process to apply changes
|
2019-01-20 04:13:08 -07:00
|
|
|
7. Enjoy
|
2018-07-24 13:15:22 -06:00
|
|
|
|
|
|
|
----------------------------------------------------------------
|
|
|
|
|
|
|
|
If you have any questions or troubles, feel free to contact us!
|