jointrashposs/content/en/.docs-legacy/install/docker.md
2023-07-11 23:48:17 +09:00

80 lines
2.2 KiB
Markdown

Create Misskey instance with Docker Compose
================================================================
This guide describes how to install and setup Misskey with Docker Compose.
:::danger
Never change the domain name (hostname) of an instance once you start using it!
:::
:::tip Requirement
- docker and dockercompose installed
:::
Get the repository
----------------------------------------------------------------
```sh
git clone -b master https://github.com/misskey-dev/misskey.git
cd misskey
git checkout master
```
Configure
----------------------------------------------------------------
Copy example configuration files with following:
```sh
cp .config/docker_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.
``` shell
sudo docker compose build
sudo docker compose run --rm web pnpm run init
```
Launch
----------------------------------------------------------------
Well done! You can start Misskey with the following command.
```sh
sudo docker compose up -d
```
GLHF✨
How to update your Misskey server
----------------------------------------------------------------
:::warning
When updating, be sure to check the [release notes](https://github.com/misskey-dev/misskey/blob/master/CHANGELOG.md) to know in advance the changes and whether or not additional work is required (in most cases, it is not).
:::
```sh
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
----------------------------------------------------------------
```sh
sudo docker compose run --rm web node packages/backend/built/tools/foo bar
```