127 lines (95 sloc) 4.04 KB

Misskey Setup and Installation Guide

We thank you for your interest in setting up your Misskey server! This guide describes how to install and setup Misskey.

Japanese version also available - ζ—₯本θͺžη‰ˆγ‚‚γ‚γ‚ŠγΎγ™

1. Create Misskey user

Running misskey as root is not a good idea so we create a user for that. In debian for exemple :

adduser --disabled-password --disabled-login misskey

2. Install dependencies

Please install and setup these softwares:

Dependencies πŸ“¦

  • Redis
    • Redis is optional, but we strongly recommended to install it
  • Elasticsearch - required to enable the search feature

3. Setup MongoDB

As root:

  1. mongo Go to the mongo shell
  2. use misskey Use the misskey database
  3. {dummy:"dummy"} ) Write dummy data to initialize the db.
  4. db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } ) Create the misskey user.
  5. exit You're done !

4. Install Misskey

  1. su - misskey Connect to misskey user.
  2. git clone -b master 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
  5. npm install Install misskey dependencies.

(optional) Generate VAPID keys

If you want to enable ServiceWorker, you need to generate VAPID keys: Unless you have set your global node_modules location elsewhere, you need to run this as root.

npm install web-push -g
web-push generate-vapid-keys

5. Configure Misskey

  1. cp .config/example.yml .config/default.yml Copy the .config/example.yml and rename it to default.yml.
  2. Edit default.yml

6. Build Misskey

Build misskey with the following:

npm run build

If you're on Debian, you will need to install the build-essential, python package.

If you're still encountering errors about some modules, use node-gyp:

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

7. That is it.

Well done! Now, you have an environment that run to Misskey.

Launch normally

Just npm start. GLHF!

Launch with systemd

  1. Create a systemd service here: /etc/systemd/system/misskey.service
  2. Edit it, and paste this and save:
Description=Misskey daemon

ExecStart=/usr/bin/npm start

  1. systemctl daemon-reload ; systemctl enable misskey Reload systemd and enable the misskey service.
  2. systemctl start misskey Start the misskey service.

You can check if the service is running with systemctl status misskey.

How to update your Misskey server to the latest version

  1. git fetch
  2. git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)
  3. npm install
  4. npm run build
  5. Check ChangeLog for migration information

If you have any questions or troubles, feel free to contact us!