Create Misskey instance with Docker Compose
This guide describes how to install and setup Misskey with Docker Compose.
Do not recreate the database with the domain/hostname of the server once you have started using it!
Requirement
- docker and dockercompose installed
Get the repository
git clone -b master https://github.com/misskey-dev/misskey.git
cd misskey
git checkout master
Configure
Copy example configuration files with following:
cp .config/example.yml .config/default.yml
cp .config/docker_example.env .config/docker.env
cp ./docker-compose.yml.example ./docker-compose.yml
Edit default.yml
and docker.env
according to the instructions in the files.
Edit docker-compose.yml
if necessary. (e.g. if you want to change the port).
Build and initialize
The following command will build Misskey and initialize the database. This will take some time.
sudo docker compose build
sudo docker compose run --rm web pnpm run init
Launch
Well done! You can start Misskey with the following command.
sudo docker compose up -d
GLHF✨
IF you once published your server, NEVER change the domain (the host name or server's URL).
How to update your Misskey server
When updating, be sure to check the release notes to know in advance the changes and whether or not additional work is required (in most cases, it is not).
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 some time depending on the contents of the update and the size of the database.
How to execute CLI command
sudo docker compose run --rm web node packages/backend/built/tools/foo bar