Help us translate

This document is translated by the community. You can contribute on Crowdin. We appreciate your cooperation 🙏.

Building Misskey using Docker Compose

This guide explains how to set up Misskey using Docker


Do not recreate the database with the domain/hostname of the server once you have started using it!

  • Make sure Docker and Docker Compose are installed on your system.

Clone the Repository

git clone -b master
cd misskey
git checkout master


The following commands will copy the various config files from examples to their actual config location.

cp .config/docker_example.yml .config/default.yml
cp .config/docker_example.env .config/docker.env
cp ./docker-compose_example.yml ./docker-compose.yml

Please edit default.yml and docker.env file as per the description.
Also edit docker-compose.yml as needed.(If you want to change the port etc.)

Build & Initialize

The next set of commands will build Misskey image and perform database initialization. This will take some time.

sudo docker compose build
sudo docker compose run --rm web pnpm run init


お疲れ様でした。You can launch Misskey with the following command.

sudo docker compose up -d


Updating Misskey


Updates are always available in the release notes. Please make sure to check in advance for any changes that may be required.

git stash
git checkout master
git pull
git submodule update --init
git stash pop
sudo docker compose build
sudo docker compose stop && sudo docker compose up -d

It may take time depending on the update content and the size of the database.

How to execute CLI commands?

sudo docker compose run --rm web node packages/backend/built/tools/foo bar