Panduan Pemasangan dan Penyetelan Misskey
Kami sangat berterima kasih atas ketertarikanmu untuk memasang peladen Misskey kamu sendiri! Panduan ini akan menjelaskan bagaimana cara memasang dan menyetel peladen Misskey.
Jangan pernah mengubah nama domain (hostname) peladen ketika kamu sudah mulai menggunakannya!
1. Pasang aplikasi yang dibutuhkan
Mohon pasang dan setel aplikasi berikut:
Aplikasi 📦
- Node.js (20.4.x)
- PostgreSQL (15.x)
- Redis
- FFmpeg
Jika kamu menggunakan Debian/Ubuntu, kamu harus memasang paket build-essential
.
corepack harus dinyalakan.
sudo corepack enable
2. Buat pengguna Misskey
Menjalankan Misskey sebagai root bukanlah ide yang bagus. Oleh karena itu, kita akan membuat pengguna baru untuk menangani masalah tersebut. Sebagai contoh dalam debian:
adduser --disabled-password --disabled-login misskey
3. Pasang Misskey
Hubungkan ke pengguna
misskey
sudo -iu misskey
Klon repositori Misskey
git clone --recursive https://github.com/misskey-dev/misskey.git
Beralih ke direktori repositori
cd misskey
Checkout ke branch rilisan terbaru
git checkout master
Unduh submodul
git submodule update --init
Pasang dependensi Misskey
pnpm install --frozen-lockfile
4. Konfigurasikan Misskey
Salin berkas
.config/example.yml
dan ubah namanya kedefault.yml
.cp .config/example.yml .config/default.yml
Sunting
default.yml
5. Bangun Misskey
Bangun Misskey dengan perintah berikut:
NODE_ENV=production pnpm run build
Apabila kamu menggunakan distribusi Debian, kamu perlu memasang paket build-essential
dan python
.
6. Inisialisasi Basis Data
Buat pengguna PostgreSQL yang sesuai dengan kata sandi masing-masing dan basis data kosong sesuai dengan nama pada berkas konfigurasi. Pastikan koneksi basis data juga bekerja dengan benar apabila dijalankan dari pengguna yang nantinya akan menjalankan Misskey. Jika tidak, nantinya akan menyebabkan masalah. Encoding basis data harus UTF-8.
sudo -u postgres psql create database misskey with encoding = 'UTF8'; create user misskey with encrypted password '{KATA_SANDI_KAMU}'; grant all privileges on database misskey to misskey; alter database misskey owner to misskey; \q
Jalankan inisialisasi basis data
pnpm run init
7. Udah, gitu aja.
Mantab! Sekarang, kamu sudah punya lingkungan yang menjalankan Misskey.
Menjalankan secara normal
Hanya jalankan perintah NODE_ENV=production pnpm run start
. Selesai!
Menjalankan dengan systemd
Buat layanan systemd di sini
/etc/systemd/system/misskey.service
Sunting, tempelkan konfigurasi berikut dan simpan:
[Unit] Description=Misskey daemon [Service] Type=simple User=misskey ExecStart=/usr/bin/npm start WorkingDirectory=/home/misskey/misskey Environment="NODE_ENV=production" TimeoutSec=60 StandardOutput=journal StandardError=journal SyslogIdentifier=misskey Restart=always [Install] WantedBy=multi-user.target
Nyalakan ulang systemd dan nyalakan layanan misskey.
sudo systemctl daemon-reload; sudo systemctl enable misskey
Jalankan layanan misskey.
sudo systemctl start misskey
Kamu dapat mengecek apakah layanannya berjalan dengan memasukkan perintah systemctl status misskey
.
Jalankan dengan OpenRC
Salin teks berikut ke
/etc/init.d/misskey
:#!/sbin/openrc-run name=misskey description="Misskey daemon" command="/usr/bin/npm" command_args="start" command_user="misskey" supervisor="supervise-daemon" supervise_daemon_args=" -d /home/misskey/misskey -e NODE_ENV=\"production\"" pidfile="/run/${RC_SVCNAME}.pid" depend() { need net use logger # alternatively, uncomment if using nginx reverse proxy #use logger nginx }
Atur layanan untuk mulai pada saat boot
rc-update add misskey
Jalankan layanan misskey
rc-service misskey start
Kamu dapat mengecek apakah layanannya berjalan dengan memasukkan perintah rc-service misskey status
.
Bagaimana cara memutakhirkan peladen Misskey ke versi terbaru
git checkout master
git pull
git submodule update --init
NODE_ENV=production pnpm install --frozen-lockfile
NODE_ENV=production pnpm run build
pnpm run migrate
- Restart your Misskey process to apply changes
- Enjoy
Apabila kamu menemukan masalah pada saat memutakhirkan, coba jalankan perintah berikut:
pnpm run clean
ataupnpm run clean-all
- Coba mutakhirkan lagi (Jangan lupa
pnpm install
)