Zulip adalah server obrolan sumber terbuka, mirip dengan Microsoft Teams, Rocket Chat, atau Slack. Itu ditulis dengan Python dan menggunakan Django, PostgreSQL, dan JavaScript. Ini terintegrasi dengan lebih dari 90 plugin pihak ketiga, termasuk Github, Jira, Stripe, Zendesk, Sentry, dll. Anda dapat memperluas integrasi dengan menghubungkannya dengan Zapier dan IFTTT. Muncul dengan fitur-fitur seperti perpesanan pribadi, obrolan grup, percakapan berulir, saluran khusus, panggilan video, unggahan file drag-and-drop, emoji khusus, integrasi Giphy, pratinjau Gambar dan Tweet dan banyak lagi. Zulip hadir dengan aplikasi desktop dan seluler untuk setiap platform, menjadikannya platform agnostik.
Dalam tutorial ini, Anda akan mempelajari cara menginstal dan mengkonfigurasi Zulip Chat di server berbasis Debian 11.
Prasyarat
-
Server yang menjalankan Debian 11.
-
Setidaknya 2GB RAM jika Anda mengharapkan kurang dari 100 pengguna. Untuk 100+ pengguna, dapatkan RAM 4 GB dan 2 server CPU.
-
Pengguna non-root dengan hak istimewa sudo.
-
Nama domain yang dikonfigurasi untuk menunjuk ke server,
zulip.example.com
. -
Semuanya diperbarui.
$ sudo apt update &&sudo apt upgrade
-
Beberapa paket yang dibutuhkan sistem Anda.
$ sudo apt install wget curl nano ufw software-properties-common apt-transport-https gnupg2 ca-certificates debian-archive-keyring -y
Beberapa paket ini mungkin sudah diinstal pada sistem Anda.
Langkah 1 - Konfigurasi Firewall
Langkah pertama adalah mengkonfigurasi firewall. Debian hadir dengan ufw (Firewall Tidak Kompleks).
Periksa apakah firewall sedang berjalan.
$ sudo ufw status
Anda akan mendapatkan output berikut.
Status:tidak aktif
Izinkan port SSH agar firewall tidak memutus koneksi saat ini saat mengaktifkannya.
$ sudo ufw izinkan OpenSSH
Izinkan port HTTP dan HTTPS juga.
$ sudo ufw izinkan 80/tcp$ sudo ufw izinkan 443/tcp
Aktifkan Firewall
$ sudo ufw enableCommand dapat mengganggu koneksi ssh yang ada. Lanjutkan dengan operasi (y|n)? yFirewall aktif dan diaktifkan pada startup sistem
Periksa kembali status firewall.
$ sudo ufw status
Anda akan melihat keluaran serupa.
Status:activeTo Action From-- ------ ----OpenSSH ALLOW Anywhere80/tcp ALLOW Anywhere443/tcp ALLOW AnywhereOpenSSH (v6) ALLOW Anywhere (v6)80/tcp (v6) ALLOW Anywhere (v6) 443/tcp (v6) Izinkan Di Mana Saja (v6)
Langkah 2 - Instal Zulip
Zulip dikirimkan dengan skrip penginstal yang melakukan hal berikut:
- Membuat pengguna
zulip
untuk menjalankan server Zulip. - Membuat direktori home menggunakan
zulip
pengguna yang menyimpan semua kode publik di bawah direktori/home/zulip/deployments
. - Menginstal semua dependensi yang dibutuhkan Zulip.
- Menginstal database PostgreSQL, server web Nginx, RabbitMQ, Redis Cache, dan Memcached.
- Menginisialisasi database Zulip.
Buat direktori sementara menggunakan mktemp
perintah untuk mengunduh penginstal Zulip dan beralih ke sana.
$ cd $(mktemp -d)
Unduh Zulip versi terbaru.
$ wget https://download.zulip.com/server/zulip-server-latest.tar.gz
Ekstrak semua file.
$ tar -xf zulip-server-latest.tar.gz
Jalankan skrip penginstal.
$ sudo ./zulip-server-*/scripts/setup/install --certbot \ --email=YOUR_EMAIL --hostname=YOUR_HOSTNAME
--certbot
flag membuat penginstal mengunduh Certbot dan menginstal sertifikat SSL secara otomatis. Ganti YOUR_EMAIL
dengan id email Anda dan YOUR_HOSTNAME
dengan nama domain untuk Zulip (zulip.example.com
).
Langkah 3 - Mengakses Antarmuka Zulip
Setelah skrip penginstal selesai, Anda akan diberikan URL unik. Salin URL ini.
.......zulip-workers:zulip_deliver_scheduled_messages:begin+ set +x+ su zulip -c '/home/zulip/deployments/current/manage.py generate_realm_creation_link'Silakan kunjungi tautan sekali pakai yang aman berikut untuk mendaftar organisasi Zulip Anda yang baru:https://zulip.example.com/new/il5dsewnhugjarbnlxf5nc46
Kunjungi https://zulip.example.com/new/il5dsewnhugjarbnlxf5nc46
di browser Anda, dan layar berikut akan muncul.
Masukkan id email Anda untuk mulai membuat organisasi Anda. Anda akan diminta untuk membuat akun di layar berikutnya.
Masukkan nama organisasi Anda dan nama Anda dan pilih kata sandi untuk masuk dan klik tombol Daftar tombol untuk melanjutkan.
Setelah selesai, dasbor Zulip akan terbuka, dan Anda dapat mulai menggunakannya.
Langkah 4 - Mengonfigurasi Email Keluar
Server Zulip perlu mengirim email secara teratur. Untuk ini, Anda harus mengatur surat keluar untuk itu. Untuk contoh kita, kita akan menggunakan layanan SES Amazon. Semua email dikirim dari id email yang Anda gunakan untuk membuat organisasi di langkah 3.
Zulip menyimpan semua pengaturannya di /etc/zulip/settings.py
mengajukan. Buka untuk diedit.
$ sudo nano /etc/zulip/settings.py
Batalkan komentar pada variabel berikut dengan menghapus # di depan mereka dan memasukkan nilai yang sesuai.
## EMAIL_HOST dan EMAIL_HOST_USER umumnya diperlukan.EMAIL_HOST ='email-smtp.us-west-2.amazonaws.com'EMAIL_HOST_USER ='yoursmpt_username'## Sandi dan rahasia tidak disimpan dalam file ini. Kata sandi## untuk pengguna EMAIL_HOST_USER masuk ke `/etc/zulip/zulip-secrets.conf`.## Dalam file itu, setel `email_password`. Misalnya:# email_password =abcd1234## EMAIL_USE_TLS dan EMAIL_PORT diperlukan untuk sebagian besar penyedia SMTP.EMAIL_USE_TLS =TrueEMAIL_PORT =587
Isi variabel tambahan berikut. Yang pertama menghapus token acak ke alamat email tanpa balasan, dan yang kedua mengonfigurasi pengirim email tanpa balasan untuk email Anda.
ADD_TOKENS_TO_NOREPLY_ADDRESS =False# TOKENIZED_NOREPLY_EMAIL_ADDRESS ="noreply-{token}@example.com"## NOREPLY_EMAIL_ADDRESS adalah pengirim email noreply yang tidak## berisi tautan konfirmasi (#LY_AD_TOKENS masalah keamanan diperbaiki oleh ada), serta untuk## email konfirmasi saat ADD_TOKENS_TO_NOREPLY_ADDRESS=False.NOREPLY_EMAIL_ADDRESS ='[email protected]'
Setelah selesai, simpan file dengan menekan Ctrl + X dan memasukkan Y saat diminta.
Zulip menyimpan kata sandi Email dalam file yang berbeda. Buka file /etc/zulip/zulip-secrets.conf
untuk diedit.
$ sudo nano /etc/zulip/zulip-secrets.conf
Tempel baris berikut di akhir file.
email_password =yoursmtp_password
Simpan file dengan menekan Ctrl + X dan memasukkan Y saat diminta.
Untuk menguji konfigurasi email keluar, Anda dapat mengirim email percobaan menggunakan perintah berikut.
$ sudo -u zulip /home/zulip/deployments/current/manage.py send_test_email [dilindungi email]Jika Anda mengalami masalah, baca:https://zulip.readthedocs.io/en/latest/production/ email.html#troubleshootingKesalahan yang paling umum adalah tidak menyetel `ADD_TOKENS_TO_NOREPLY_ADDRESS=False` saat menggunakan penyedia email yang tidak mendukung fitur tersebut. Mengirim 2 email percobaan dari:* [email protected] * [email protected]Berhasil mengirim 2 email ke [ email dilindungi]
Mulai ulang server.
$ sudo -u zulip /home/zulip/deployments/current/scripts/restart-server
Perhatikan bahwa Anda dapat memulai atau menghentikan server Zulip hanya sebagai zulip
pengguna.
Langkah 5 - Perintah Server Zulip
Untuk menghentikan server Zulip, gunakan perintah berikut.
$ sudo -u zulip /home/zulip/deployments/current/scripts/stop-server
Untuk memulai kembali server, gunakan perintah berikut.
$ sudo -u zulip /home/zulip/deployments/current/scripts/start-server
Mulai ulang server dengan cara yang sama.
$ sudo -u zulip /home/zulip/deployments/current/scripts/restart-server
Ada banyak tugas pengelolaan yang dapat Anda capai menggunakan manage.py
skrip dikirimkan dengan Zulip.
Anda dapat menjalankan skrip menggunakan perintah berikut. Kami akan menggunakan help
sub-perintah untuk membuat daftar semua kemungkinan operasi yang dapat dilakukan seseorang.
$ sudo -u zulip /home/zulip/deployments/current/manage.py helpKetik 'manage.py help' untuk bantuan pada subcommand tertentu. Subcommand yang tersedia:[analytics] check_analytics_state clear_analytics_tables clear_single_stat populate_analytics_count auth] ubahpassword createsuperuser[contenttypes] remove_stale_contenttypes[django] centang createcachetable dbshell diffsettings dumpdata flush inspectdb loaddata makemigrations migrasi sendtestemail shell showmigrations sqlflush sqlmigrate sqlsequencereset squashmigrations startapp startproject test server[otpkensesssion] clearsocialtokensessionsssion kumpulkan [two_factor] two_factor_disable two_factor_status[zerver] add_users_to_streams archive_messages audit_fts_indexes backup bulk_change_user_nam e change_password change_realm_subdomain change_user_email change_user_role check_redis checkconfig compilemessages convert_gitter_data convert_mattermost_data convert_slack_data create_default_stream_groups create_large_indexes create_realm_internal_bots create_stream CREATE_USER deactivate_realm deactivate_user delete_old_unclaimed_attachments delete_realm delete_user deliver_scheduled_emails deliver_scheduled_messages dump_messages edit_linkifiers email_mirror enqueue_digest_emails enqueue_file ekspor export_single_user export_usermessage_batch fill_memcached_caches fix_unreads generate_invite_links generate_multiuse_invite_link generate_realm_creation_link get_migration_status list_realms impor logout_all_users makemessages merge_streams print_email_delivery_backlog process_queue purge_queue query_ldap rate_limit reactivate_realm realm_dom ain register_server remove_users_from_stream rename_stream reset_authentication_attempt_count restore_messages runtornado scrub_realm send_custom_email send_password_reset_email send_realm_reactivation_email send_stats send_test_email send_to_email_mirror send_webhook_set_mesh_adminhook_fix_transfers Langkah 6 - Mengupgrade Zulip
Untuk meningkatkan Zulip, unduh rilis terbaru dari server.
$ curl -fLO https://download.zulip.com/server/zulip-server-latest.tar.gzJalankan perintah berikut untuk melakukan upgrade.
$ sudo /home/zulip/deployments/current/scripts/upgrade-zulip ~/zulip-server-latest.tar.gzScript akan melakukan fungsi berikut.
- Jalankan
apt upgrade
untuk meningkatkan sistem.- Instal versi baru dependensi Zulip.
- Mematikan server Zulip.
- Menjalankan
puppet apply
perintah.- Lakukan migrasi database jika diperlukan.
- Memulai ulang server Zulip.
Langkah 7 - Cadangkan dan Pulihkan Zulip
Mencadangkan dan Memulihkan Zulip itu mudah, berkat skrip bawaan yang menangani semuanya.
Untuk mengambil cadangan lengkap Zulip, jalankan perintah berikut.
$ sudo -u zulip /home/zulip/deployments/current/manage.py backup --output=~/backups/zulip-backup.tar.gzPerintah di atas akan membuat
zulip-backup.tar.gz
file di~/backups
direktori. Ini berisi semua yang Anda perlukan untuk mentransfer atau memulihkan Zulip.Untuk memulihkan cadangan yang ada, instal Zulip melalui langkah 2.
Setelah selesai, jalankan perintah berikut untuk menyelesaikan pemulihan.
$ sudo -u zulip /home/zulip/deployments/current/scripts/setup/restore-backup ~/backups/zulip-backup.tar.gzJika Anda ingin mengubah domain, Anda dapat mengubah variabel
EXTERNAL_HOST
dalam file/etc/zulip/settings.py
dan kemudian restart server menggunakan perintah berikut.$ sudo -u zulip /home/zulip/deployments/current/scripts/restart-serverKesimpulan
Ini mengakhiri tutorial kami tentang menginstal dan mengkonfigurasi server Zulip Chat pada sistem berbasis Debian 11. Anda dapat mengikuti dokumentasi resmi Zulip untuk mengeksplorasi secara detail. Jika Anda memiliki pertanyaan, kirimkan di komentar di bawah.
Cara Mengatur Nginx dengan Modul Google Pagespeed di Debian 11 Cara Menginstal Apache Guacamole di Debian 11Debian