* New translations thread-mute.md (Chinese Simplified) * New translations webhook.md (Chinese Simplified) * New translations 1.troubleshooting.md (Chinese Simplified) * New translations donate.md (Chinese Simplified) * New translations misskey-hub.md (Chinese Simplified) * New translations announcement.md (Chinese Simplified) * New translations role.md (Chinese Simplified) * New translations 1.index.md (Chinese Simplified) * New translations bash.md (Chinese Simplified) * New translations docker.md (Chinese Simplified) * New translations kubernetes.md (Chinese Simplified) * New translations manual.md (Chinese Simplified) * New translations ubuntu-manual.md (Chinese Simplified) * New translations cdn.md (Chinese Simplified) * New translations disable-timelines.md (Chinese Simplified) * New translations 1.index.md (Chinese Simplified) * New translations permission.md (Chinese Simplified) * New translations 1.index.md (Chinese Simplified) * New translations 2.miauth.md (Chinese Simplified) * New translations 5.releases.md (Chinese Simplified) * New translations 1.index.md (Chinese Simplified) * New translations 3.oauth.md (Chinese Simplified) * New translations ja-jp.yml (Chinese Traditional) * New translations 1.about-misskey.md (Chinese Traditional) * New translations 2.get-started.md (Chinese Traditional) * New translations 3.join-server.md (Chinese Traditional) * New translations 4.things-to-know.md (Chinese Traditional) * New translations ads.md (Chinese Traditional) * New translations drive.md (Chinese Traditional) * New translations mfm.md (Chinese Traditional) * New translations mute-and-block.md (Chinese Traditional) * New translations pages.md (Chinese Traditional) * New translations poll.md (Chinese Traditional) * New translations share-form.md (Chinese Traditional) * New translations thread-mute.md (Chinese Traditional) * New translations webhook.md (Chinese Traditional) * New translations 1.troubleshooting.md (Chinese Traditional) * New translations donate.md (Chinese Traditional) * New translations misskey-hub.md (Chinese Traditional) * New translations announcement.md (Chinese Traditional) * New translations role.md (Chinese Traditional) * New translations 1.index.md (Chinese Traditional) * New translations bash.md (Chinese Traditional) * New translations docker.md (Chinese Traditional) * New translations kubernetes.md (Chinese Traditional) * New translations manual.md (Chinese Traditional) * New translations ubuntu-manual.md (Chinese Traditional) * New translations cdn.md (Chinese Traditional) * New translations disable-timelines.md (Chinese Traditional) * New translations 1.index.md (Chinese Traditional) * New translations permission.md (Chinese Traditional) * New translations 1.index.md (Chinese Traditional) * New translations 2.miauth.md (Chinese Traditional) * New translations publish-on-your-website.md (Chinese Traditional) * New translations 5.releases.md (Chinese Traditional) * New translations 1.index.md (Chinese Traditional) * New translations 3.oauth.md (Chinese Traditional) * New translations 1.about-misskey.md (English) * New translations 2.get-started.md (English) * New translations 3.join-server.md (English) * New translations 4.things-to-know.md (English) * New translations ads.md (English) * New translations drive.md (English) * New translations mfm.md (English) * New translations mute-and-block.md (English) * New translations pages.md (English) * New translations poll.md (English) * New translations share-form.md (English) * New translations thread-mute.md (English) * New translations webhook.md (English) * New translations 1.troubleshooting.md (English) * New translations donate.md (English) * New translations misskey-hub.md (English) * New translations announcement.md (English) * New translations role.md (English) * New translations 1.index.md (English) * New translations bash.md (English) * New translations docker.md (English) * New translations kubernetes.md (English) * New translations manual.md (English) * New translations ubuntu-manual.md (English) * New translations cdn.md (English) * New translations disable-timelines.md (English) * New translations 1.index.md (English) * New translations permission.md (English) * New translations 1.index.md (English) * New translations 2.miauth.md (English) * New translations 5.releases.md (English) * New translations 1.index.md (English) * New translations 3.oauth.md (English) * New translations 1.about-misskey.md (Indonesian) * New translations 2.get-started.md (Indonesian) * New translations 3.join-server.md (Indonesian) * New translations 4.things-to-know.md (Indonesian) * New translations ads.md (Indonesian) * New translations drive.md (Indonesian) * New translations mfm.md (Indonesian) * New translations mute-and-block.md (Indonesian) * New translations pages.md (Indonesian) * New translations poll.md (Indonesian) * New translations share-form.md (Indonesian) * New translations thread-mute.md (Indonesian) * New translations webhook.md (Indonesian) * New translations 1.troubleshooting.md (Indonesian) * New translations donate.md (Indonesian) * New translations misskey-hub.md (Indonesian) * New translations announcement.md (Indonesian) * New translations role.md (Indonesian) * New translations 1.index.md (Indonesian) * New translations bash.md (Indonesian) * New translations docker.md (Indonesian) * New translations kubernetes.md (Indonesian) * New translations manual.md (Indonesian) * New translations ubuntu-manual.md (Indonesian) * New translations cdn.md (Indonesian) * New translations disable-timelines.md (Indonesian) * New translations 1.index.md (Indonesian) * New translations permission.md (Indonesian) * New translations 1.index.md (Indonesian) * New translations 2.miauth.md (Indonesian) * New translations 5.releases.md (Indonesian) * New translations 1.index.md (Indonesian) * New translations 3.oauth.md (Indonesian) * New translations 5.releases.md (Korean) * New translations ja-jp.yml (English) * New translations docker.md (English) * New translations ja-jp.yml (Indonesian) * New translations 5.releases.md (Korean) * New translations ja-jp.yml (Indonesian) * New translations 1.about-misskey.md (Indonesian) * New translations 1.index.md (Indonesian) * New translations ads.md (Indonesian) * New translations antenna.md (Indonesian) * New translations charts.md (Indonesian) * New translations clip.md (Indonesian) * New translations custom-emoji.md (Indonesian) * New translations deck.md (Indonesian) * New translations drive.md (Indonesian) * New translations favorite.md (Indonesian) * New translations follow.md (Indonesian) * New translations hashtag.md (Indonesian) * New translations mention.md (Indonesian) * New translations mfm.md (Indonesian) * New translations 1.index.md (Indonesian) * New translations announcement.md (Indonesian) * New translations bash.md (Indonesian) * New translations ja-jp.yml (Indonesian) * New translations mute-and-block.md (Indonesian) * New translations pages.md (Indonesian) * New translations apps.md (Indonesian) * New translations donate.md (Indonesian) * New translations bash.md (Indonesian) * New translations docker.md (Indonesian) * New translations manual.md (Indonesian) * New translations 1.about-misskey.md (Chinese Traditional) * New translations 1.about-misskey.md (Chinese Traditional) * New translations create-plugin.md (French) * New translations create-plugin.md (Italian) * New translations create-plugin.md (Polish) * New translations create-plugin.md (Chinese Simplified) * New translations create-plugin.md (Chinese Traditional) * New translations create-plugin.md (Indonesian) * New translations aiscript.md (French) * New translations aiscript.md (Italian) * New translations aiscript.md (Korean) * New translations aiscript.md (Polish) * New translations aiscript.md (Chinese Simplified) * New translations aiscript.md (Chinese Traditional) * New translations aiscript.md (English) * New translations aiscript.md (Indonesian) * New translations ja-jp.yml (Chinese Traditional) * New translations ja-jp.yml (Chinese Traditional) * New translations troubleshooting.md (French) * New translations libraries.md (French) * New translations troubleshooting.md (Italian) * New translations libraries.md (Italian) * New translations troubleshooting.md (Korean) * New translations libraries.md (Korean) * New translations troubleshooting.md (Polish) * New translations libraries.md (Polish) * New translations troubleshooting.md (Chinese Simplified) * New translations libraries.md (Chinese Simplified) * New translations troubleshooting.md (Chinese Traditional) * New translations libraries.md (Chinese Traditional) * New translations troubleshooting.md (English) * New translations libraries.md (English) * New translations troubleshooting.md (Indonesian) * New translations libraries.md (Indonesian) * New translations ja-jp.yml (Chinese Traditional) * New translations ja-jp.yml (French) * New translations 2.miauth.md (French) * New translations ja-jp.yml (Italian) * New translations 2.miauth.md (Italian) * New translations ja-jp.yml (Korean) * New translations ja-jp.yml (Polish) * New translations 2.miauth.md (Polish) * New translations ja-jp.yml (Chinese Simplified) * New translations 2.miauth.md (Chinese Simplified) * New translations 2.miauth.md (Chinese Traditional) * New translations ja-jp.yml (English) * New translations 2.miauth.md (English) * New translations ja-jp.yml (Indonesian) * New translations 2.miauth.md (Indonesian) * Revert "New translations 1.about-misskey.md (English)" This reverts commit2b9572c2cf
. * Revert "New translations 2.get-started.md (English)" This reverts commit2fa05a5aee
. * Revert "New translations 4.things-to-know.md (English)" This reverts commit698c5e980d
. * Revert "New translations ads.md (English)" This reverts commitf0e1cd2965
. * Revert "New translations mfm.md (English)" This reverts commit51dcc0fc10
. * Revert "New translations webhook.md (English)" This reverts commitcfbebc5783
. * Revert "New translations 1.index.md (English)" This reverts commit67d2bec45c
. * Revert "New translations disable-timelines.md (English)" This reverts commit19ead90df6
. * Revert "New translations webhook.md (French)" This reverts commit52e6a8429a
. * Revert "New translations webhook.md (Chinese Traditional)" This reverts commit395f0fbc4a
. * Revert "New translations webhook.md (Polish)" This reverts commitac4e2c534e
. * Revert "New translations webhook.md (Korean)" This reverts commit14853e1eab
. * Revert "New translations pages.md (Korean)" This reverts commitf88e73d1ce
. * Revert "New translations bash.md (Korean)" This reverts commit60c9fae6a8
. * Revert "New translations kubernetes.md (Korean)" This reverts commit2239e8fd23
. * Revert "New translations ubuntu-manual.md (Korean)" This reverts commit3aab982625
. * Revert "New translations 1.about-misskey.md (Chinese Traditional)" This reverts commit5ac92102db
. * Revert "New translations 2.get-started.md (Chinese Traditional)" This reverts commitd090253e34
. * Revert "New translations 3.join-server.md (Chinese Traditional)" This reverts commit634db4d49b
. * Revert "New translations 4.things-to-know.md (Chinese Traditional)" This reverts commit383ee08013
. * Revert "New translations ads.md (Chinese Traditional)" This reverts commit6ed3b6885f
. * Revert "New translations drive.md (Chinese Traditional)" This reverts commit988cacb17e
. * Revert "New translations mfm.md (Chinese Traditional)" This reverts commit6b53e36fc4
. * Revert "New translations mute-and-block.md (Chinese Traditional)" This reverts commit44b1b3c723
. * Revert "New translations pages.md (Chinese Traditional)" This reverts commit4e60747a55
. * Revert "New translations poll.md (Chinese Traditional)" This reverts commit00385dc6a1
. * Revert "New translations share-form.md (Chinese Traditional)" This reverts commit8858eaf2f7
. * Revert "New translations thread-mute.md (Chinese Traditional)" This reverts commitd07bd70000
. * Revert "New translations 1.troubleshooting.md (Chinese Traditional)" This reverts commit7405a91ff9
. * fix * New translations aiscript.md (Korean) * New translations ja-jp.yml (Chinese Traditional) * New translations troubleshooting.md (Korean) * New translations ja-jp.yml (French) * New translations ja-jp.yml (Italian) * New translations ja-jp.yml (Korean) * New translations ja-jp.yml (Polish) * New translations ja-jp.yml (Chinese Simplified) * New translations ja-jp.yml (English) * New translations ja-jp.yml (Indonesian) * New translations 5.releases.md (Korean) * fix * fix * fix * fix
9.1 KiB
Misskey install shell script v3.0.0
Pasang Misskey dengan mudah hanya menggunakan satu shell script!
Kamu dapat memasang misskey pada peladen Ubuntu hanya dengan menjawab beberapa pertanyaan saja.
Terdapat juga script untuk memutakhirkan.
Untuk v12
Versi Bahasa Inggris
Lisensi
Bahan Yang Perlu Disiapkan
- Domain
- Peladen Ubuntu
- Akun Cloudflare (Direkomendasikan)
:::danger
Jangan pernah mengganti nama domain (hostname) peladen ketika kamu sudah mulai menggunakannya!
:::
Pastikan pengaturan jaringan peladen DNS anda telah benar secara menyeluruh sebelum memulai instalasi. Apabila tidak, proses otentikasi Let's Encrypt akan terhambat dikarenakan percobaan permintaan sertifikat Let's Encrypt dibatasi dalam jumlah yang kecil.
Pengaturan Cloudflare
Cloudflareを使う場合、Cloudflareのドメインの設定を完了してからインストールを開始するようにしてください。
ネームサーバーの適用には最大で3日程度かかる場合があります。
Jika kamu menggunakan nginx dan Cloudflare, kamu harus mengatur Cloudflare terlebih dahulu untuk:
- Mengatur DNS.
- Pada tab pengaturan SSL/TLS, ubah mode enkripsi menjadi "Full".
Prosedur
1. SSH
Menyambung ke peladen melalui SSH.
(Jika kamu memiliki peladen dengan lingkungan desktop terpasang, buka Terminal/shell)
2. Perbaharui Lingkungan Peladen
Pastikan semua paket telah termutakhirkan dan boot ulang.
sudo apt update; sudo apt full-upgrade -y; sudo reboot
3. Jalankan Pemasangan
Hubungkan ulang SSH dan mulai pemasangan Misskey.
Pastikan untuk membaca Tips sebelum memulai proses pemasangan.
wget https://raw.githubusercontent.com/joinmisskey/bash-install/main/ubuntu.sh -O ubuntu.sh; sudo bash ubuntu.sh
Ubah domain example.com menjadi domain milik kamu.
4. Untuk memutakhirkan
Terdapat juga script untuk memutakhirkan peladen Misskey.
Script pemutakhiran tidak memutakhirkan lingkungan peladen.Mohon untuk merujuk ke CHANGELOG (Bahasa Jepang) dan Daftar rilis di GitHub (Bahasa Inggris) serta lakukan operasi migrasi sesuai arahan.
Pertama, unduh script.
wget https://raw.githubusercontent.com/joinmisskey/bash-install/main/update.ubuntu.sh -O update.sh
Jalankan ini ketika kamu ingin memutakhirkan Misskey.
sudo bash update.sh
- Pada lingkungan systemd, opsi
-r
dapat digunakan untuk memutakhirkan dan memboot ulang sistem. - Pada lingkungan docker, kamu dapat menentukan repository:tag sebagai argumen.
Lingkungan dimana operasi ini telah diuji
Oracle Cloud Infrastructure
Script ini bekerja dengan baik pada bentuk compute berikut yang disediakan oleh Oracle Cloud Infrastructure Always Free services.
- VM.Standard.E2.1.Micro (AMD)
- VM.Standard.A1.Flex (ARM) [1OCPU RAM6GB atau lebih]
Pastikan untuk menggunakan iptables.
Isu & PRs Dipersilahkan
Apabila script ini tidak dapat bekerja pada lingkungan diatas, kemungkinan karena bug.Kami mengapresiasi apabila kamu dapat melaporkan hal tersebut sebagai isu dengan syarat tertentu yang telah kamu input ke dalam script.
Sangat sulit untuk memberikan bantuan untuk lingkungan selain yang disebutkan di atas, namun kami masih dapat membantu mencarikan solusi dari masalah kamu apabila kamu memberikan informasi detil mengenai lingkungan peladenmu.
Saran untuk fitur juga dipersilahkan.
Tips
Cara memilih opsi dan spesifikasi.
Systemd or Docker?
Mulai dari v1, terdapat metode pemasangan systemd atau Docker yang dapat dipilih.
Ketika memilih metode pemasangan Docker, Misskey akan dipasang dan dijalankan melalui Docker sedangkan Redis, Postgres dan sebagainya akan dipasang dan dijalankan pada host peladen langsung.
docker-composeですべての機能を動かす方法については、mamemonongaさんが作成したこちらの記事がおすすめです。
Apabila kamu memilih menggunakan image dari Docker Hub, kebutuhan untuk build Misskey tidak diperlukan dan pilihan ini merupakan rekomendasi dari kami.
Namun ketika melakukan pemutakhiran, migrasi tetap dibutuhkan dan downtime tetap tidak dapat terhindarkan.
Selain itu, dengan menggunakan image dari Docker Hub tidak perlu lagi menyiapkan lingkungan untuk build Misskey (tidak ada git pull
). Dengan kata lain, apabila ingin menyiapkan dan menjalankan fork akan lebih merepotkan.
Karena alasan performa, metode build Docker secara lokal tidak dipergunakan lagi.
Metode pemasangan systemd sangat direkomendasikan apabila kamu ingin menggunakan ataupun menjalankan fork. Metode pemasangan ini juga tidak mengharuskan kamu untuk mengunggah image ke Docker Hub.
Urutan rekomendasi yang disarankan adalah sebagai berikut:
- Docker Hub
- systemd
- Docker Build
Gunakan nginx atau tidak?
Apabila kamu ingin membuat peladen Misskey pada satu peladen, disarankan untuk menggunakan nginx.
ロードバランサーを設置する場合にはnginxをインストールせず、Misskeyのnginx設定を参考にロードバランサーを設定するのがよいと思います。
Tambahkan swap!
Apabila kamu menggunakan swap, pastikan swap kamu memiliki hingga ruang hingga 3GB. Karena script akan dapat berjalan lancar apabila memiliki memori dengan minimal 3GB.
Jika script gagal dan kamu ingin menjalankannya kembali
Perhatikan arahan berikut ini:
- Apabila Redis atau Postgres telah terpasang, atur
install locally
ke "No".
Biarkan pengaturanhost・port
apa adanya lalu tekan Enter. Masukkan nama pengguna dan kata sandi seperti yang telah ditentukan pada proses sebelumnya.
Mengenai berkas .env
Script pemasangan membuat dua berkas.env yang dipergunakan untuk memutakhirkan Misskey.
Berkas ini dipergunakan pada saat memutakhirkan.
/root/.misskey.env
Diperlukan untuk mengingat pengguna yang menjalankan proses misskey
/home/(pengguna_misskey)/.misskey.env
Dibuat untuk systemd yang dipertujukan mengingat direktori
.
/home/(pengguna_misskey)/.misskey-docker.env
Dibuat untuk Docker dengan tujuan menyimpan nomor kontainer beserta image yang sedang berjalan.
Nomor kontainer akan diperbarui selama pemutakhiran.
Image lama akan dihapus.
Manajemen Mandiri
Setelah pemasangan, ada beberapa catatan yang cukup berguna pada saat ingin mengubah konfigurasi.
Ganti domain "example.com" dengan domain kamu sendiri.
Direktori Misskey
Sumber kode akan diklon pada direktori /home/pengguna/direktori
.
(nilai default untuk pengguna dan direktori adalah misskey)
Kamu dapat menavigasi ke direktori Misskey dengan melakukan perintah berikut.
sudo -iu pengguna
cd direktori
Untuk kembali ke pengguna sebelumnya, jalankan perintah exit
.
exit
systemd
Nama proses dalam systemd adalah example.com
.
Sebagai contoh untuk memulai ulang proses, jalankan perintah berikut.
sudo systemctl restart example.com
Kamu dapat memeriksa logs dengan menggunakan journalctl
.
journalctl -t example.com
Berkas konfigurasi systemd disimpan pada /etc/systemd/system/example.com.service
.
Docker
Docker menggunakan pengguna Misskey untuk dijalankan secara tanpa root.
Saat masuk ke pengguna Misskey menggunakan sudo
, kamu perlu mengubah XDG_RUNTIME_DIR
dan DOCKER_HOST
terlebih dahulu.
sudo -iu pengguna
export XDG_RUNTIME_DIR=/run/user/$UID
export DOCKER_HOST=unix://$XDG_RUNTIME_DIR/docker.sock
# Tampilkan daftar Proses
docker ps
# Build (Repositori: local/misskey:latest)
docker build -t local/misskey:latest ./misskey
# Menjalankan Docker
docker run -d -p 3000:3000 --add-host=docker_host:10.0.0.1 -v /home/misskey/misskey/files:/misskey/files -v "/home/misskey/misskey/.config/default.yml":/misskey/.config/default.yml:ro --restart unless-stopped -t "local/misskey:latest"
# Menampilkan log
docker logs --tail 50 -f ID Kontainer
Proses diatas dapat dilakukan dengan perintah satu baris berikut.
sudo -u pengguna XDG_RUNTIME_DIR=/run/user/$(id -u pengguna) DOCKER_HOST=unix:///run/user/$(id -u pengguna)/docker.sock docker ps
nginx
Pengaturan situs pada nginx disimpan di /etc/nginx/conf.d/example.com.conf
.
Redis
Parameter requirepass
dan bind
diatur di /etc/redis/misskey.conf
.
Q. Error 502 tidak dapat diakses setelah melakukan pemutakhiran
Apabila proses migrasi sedang berlangsung, Docker tidak dapat memberikan izin akses langsung.
Pastikan dan periksa apakah proses migrasi telah selesai.
Pada kasus menggunankan systemd, perintah pnpm install
kemungkinan gagal.
Coba jalankan perintah berikut ini di direktori Misskey lalu jalankan pemutakhiran kembali.
pnpm run clean-all
Apabila kamu memeriksa log dengan journalctl
, umumnya kamu akan menemukan pernyataan dalam log yang menampilkan re2
.
Q. Membangun instansi Misskey lebih dari 1 di peladen yang sama
Script ini tidak dapat melakukan pemasangan instansi Misskey lebih dari 1 pada peladen yang sama.
Hal ini dikarenakan beberapa pengaturan nantinya akan ditimpa dan kamu akan mendapatkan banyak galat dan kesalahan dalam proses menjalankan script ini.