Dalam artikel ini, kami akan menunjukkan cara menginstal Etherpad di server Debian 9 yang dikelola.
Etherpad adalah editor waktu nyata yang berbasis web dan hadir sebagai paket sumber terbuka. Aplikasi ini memungkinkan pengguna untuk mengedit dokumen secara bersamaan secara real time dan melihat perbedaannya melalui penggunaan teks berwarna. Etherpad juga memiliki kotak obrolan yang memungkinkan pengguna untuk berkomunikasi dengan mudah antara satu sama lain, yang selanjutnya meningkatkan produktivitas. Ini tidak akan memakan waktu lama untuk menginstal, jadi mari kita mulaiz
Langkah 1:Hubungkan ke Server Anda
Sebelum kita mulai, Anda harus terhubung ke server Anda melalui SSH sebagai pengguna root atau sebagai akun admin. Untuk melakukannya, gunakan perintah berikut:
ssh root@IP_ADDRESS -p PORT_NUMBER
Tentu saja, Anda harus mengganti IP_ADDRESS
dan PORT_NUMBER
dengan alamat IP server Anda masing-masing dan nomor port SSH. Jika perlu, ganti 'root' dengan nama pengguna akun admin Anda.
Setelah masuk, pastikan server Anda mutakhir dengan menjalankan perintah berikut:
apt update apt upgrade
Langkah 2:Instal Dependensi
Setelah berhasil masuk, Anda harus menjalankan perintah berikut agar Anda dapat menginstal semua dependensi untuk instalasi Node.js.
apt install gzip git curl python libssl-dev pkg-config gcc g++ make build-essential -y
Langkah 3:Instal Node.js
Etherpad membutuhkan Node.js versi 8.9.0 atau lebih tinggi, jadi dalam tutorial ini, kami akan menginstal versi terbaru Node.js (pada saat menulis tutorial ini).
Aktifkan repositori NodeSource dengan perintah curl berikut:
curl -sL https://deb.nodesource.com/setup_11.x | sudo bash -
Sekarang, Anda dapat menginstal Node.js dengan perintah berikut:
apt install -y nodejs
Anda dapat memverifikasi versi nodejs dan npm dengan menggunakan perintah di bawah ini.
nodejs --version npm --version
Langkah 4:Instal dan Konfigurasi MySQL
Server database adalah salah satu persyaratan untuk menjalankan Etherpad. Anda dapat menginstal MySQL, yang merupakan server database open-source yang hebat. Ketik perintah berikut untuk menginstal MySQL di server Anda:
apt install mysql-server mysql-client
Setelah MySQL terinstal di server Anda, Anda dapat menggunakan perintah di bawah ini untuk menghentikan, memulai, dan mengaktifkan layanan MySQL.
systemctl start mysql systemctl stop mysql systemctl enable mysql
Perintah berikutnya adalah opsional, tetapi direkomendasikan oleh kami. Anda dapat menjalankan perintah tersebut jika ingin mengamankan server MySQL dengan melarang akses root jarak jauh, menghapus database pengujian, dan menyetel kata sandi root untuk MySQL.
mysql_secure_installation
Saat diminta, jawab pertanyaan di bawah dengan mengikuti panduan.
Enter current password for root (enter for none): Just press the [Enter] key, as no password is set by default. Set root password? [Y/n]: Y New password: Enter your password Re-enter new password: Repeat your password Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y
Mulai ulang server MySQL agar perubahan diterapkan.
systemctl restart mysql
Sekarang Anda harus dapat masuk ke shell MySQL dengan perintah:
mysql -u root -p
Kemudian ketikkan kata sandi yang Anda buat di atas untuk masuk. Setelah Anda berada di shell MySQL, Anda dapat menggunakan perintah berikut dan membuat database bernama etherpad_db
untuk aplikasi Etherpad.
CREATE DATABASE etherpad_db;
Untuk memberi pengguna etherpad_user akses penuh ke etherpad_db, jalankan perintah:
GRANT ALL PRIVILEGES ON etherpad_db.* TO etherpad_user@localhost IDENTIFIED BY 'Str0n9Pas$worD';
CATATAN: Jangan lupa untuk mengganti ‘Str0n9Pas$worD‘ dengan kata sandi yang unik dan kuat. Sekarang Anda dapat menggunakan operasi hak istimewa flush untuk memuat ulang tabel hibah, setelah itu Anda dapat keluar dari shell MySQL.
FLUSH PRIVILEGES; EXIT;
Langkah 5:Unduh dan Instal Etherpad
Dengan perintah berikut, Anda akan membuat pengguna baru bernama etherpad dan beralih ke pengguna tersebut.
useradd -m -s /bin/bash etherpad su - etherpad
Jalankan perintah git di bawah ini dan klon repositori etherpad.
git clone git://github.com/ether/etherpad-lite.git
Setelah Anda berhasil mengkloning repositori etherpad, Anda dapat masuk ke direktori etherpad-lite dan menjalankan bin/run.sh
skrip untuk memulai Etherpad.
cd etherpad-lite/ bin/run.sh
Etherpad sekarang telah dimulai untuk sementara. Untuk melihat halaman beranda Etherpad, Anda dapat membuka browser web pilihan Anda dan mengetikkan alamat IP publik server Anda dengan port 9001.
http://server_IP_address:9001/
Anda seharusnya dapat melihat halaman utama Etherpad.
Untuk menghentikan aplikasi, Anda dapat menekan 'Ctrl+c' di terminal Anda. Masalah dengan ini adalah bahwa layanan hanya berjalan sementara – hanya saat dibuka di sesi terminal Anda. Agar server terus berjalan, Anda perlu membuat layanan untuk itu. Hal ini dijelaskan di Langkah 7 .
Langkah 6:Konfigurasi Etherpad
Mengikuti langkah dari artikel ini, Anda akan melakukan beberapa konfigurasi dasar editor Etherpad.
Login ke pengguna etherpad dan masuk ke direktori etherpad-lite.
su - etherpad cd etherpad-lite/
Buka settings.json
file konfigurasi dengan editor teks pilihan Anda. Dalam contoh kita, kita akan menggunakan nano sebagai editor teks pilihan.
nano settings.json
Ubah alamat IP di file konfigurasi menjadi 'server_IP_address', dan secara opsional Anda dapat mengubah port mendengarkan ke non-default. Dalam contoh kita, kita akan menggunakan port default.
"ip": "server_IP_address", "port" : 9001,
Nonaktifkan database 'kotor' yang merupakan default dalam file konfigurasi dengan menggunakan tag komentar /*
dan */
seperti yang ditunjukkan pada contoh di bawah ini.
/* "dbType" : "dirty", "dbSettings" : { "filename" : "var/dirty.db" }, */
Sekarang batalkan komentar pada konfigurasi database MySQL dan masukkan informasi MySQL yang Anda buat pada langkah keempat artikel ini.
"dbType" : "mysql", "dbSettings" : { "user" : "etherpad_user", "host" : "localhost", "port" : 3306, "password": "Str0n9Pas$worD", "database": "etherpad_db", "charset" : "utf8mb4" },
Anda dapat mengaktifkan pengguna admin dengan menghapus komentar dari baris tersebut dan mengganti Str0n9Pas$worD
dengan kata sandi pilihan Anda.
"users": { "admin": { // "password" can be replaced with "hash" if you install ep_hash_auth "password": "Str0n9Pas$worD", "is_admin": true }, "user": { // "password" can be replaced with "hash" if you install ep_hash_auth "password": "Str0n9Pas$worD", "is_admin": false } },
Setelah Anda menyelesaikan semua modifikasi, Anda dapat menyimpan file konfigurasi dan keluar.
Langkah 7:Siapkan Etherpad sebagai Layanan
Metode 1:Systemd
Pada langkah ini, Anda akan mengonfigurasi Etherpad untuk dijalankan sebagai layanan systemd pada sistem Debian 9 Anda.
Jalankan perintah berikut sehingga Anda dapat membuat file layanan baru bernama 'etherpad.service'.
cd /etc/systemd/system/ && nano etherpad.service
Kemudian paste konfigurasi berikut.
[Unit] Description=etherpad-lite (real-time collaborative document editing) After=syslog.target network.target [Service] Type=simple User=etherpad Group=etherpad WorkingDirectory=/home/etherpad/etherpad-lite Environment=NODE_ENV=development ExecStart=/usr/bin/nodejs /home/etherpad/etherpad-lite/node_modules/ep_etherpad-lite/node/server.js Restart=always # use mysql plus a complete settings.json to avoid Service hold-off time over, scheduling restart. [Install] WantedBy=multi-user.target
Anda kemudian dapat menyimpan file konfigurasi dan keluar. Gunakan perintah di bawah ini untuk memuat ulang daftar layanan systemd di server Anda.
systemctl daemon-reload
Sekarang Anda dapat menggunakan systemctl
perintah agar Anda dapat memulai dan mengaktifkan aplikasi Etherpad dengan mudah dan terus-menerus. Saat layanan diaktifkan, layanan akan dimulai secara otomatis setiap kali sistem di-boot.
systemctl start etherpad systemctl enable etherpad
Metode 2:Init.d
Jika Anda lebih suka menggunakan init, Anda dapat membuat skrip awal baru dengan perintah berikut.
nano /etc/init.d/etherpad
Tempelkan skrip berikut.
#!/bin/sh ### BEGIN INIT INFO # Provides: etherpad-lite # Required-Start: $local_fs $remote_fs $network $syslog # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts etherpad lite # Description: starts etherpad lite using start-stop-daemon ### END INIT INFO PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/node/bin" LOGFILE="/var/www/etherpad-lite/etherpad-lite.log" EPLITE_DIR="/var/www/etherpad-lite" EPLITE_BIN="bin/safeRun.sh" USER="etherpad" GROUP="etherpad" DESC="Etherpad Lite" NAME="etherpad-lite" set -e . /lib/lsb/init-functions start() { echo "Starting $DESC... " start-stop-daemon --start --chuid "$USER:$GROUP" --background --make-pidfile --pidfile /var/run/$NAME.pid --exec $EPLITE_DIR/$EPLITE_BIN -- $LOGFILE || true echo "done" } #We need this function to ensure the whole process tree will be killed killtree() { local _pid=$1 local _sig=${2-TERM} for _child in $(ps -o pid --no-headers --ppid ${_pid}); do killtree ${_child} ${_sig} done kill -${_sig} ${_pid} } stop() { echo "Stopping $DESC... " while test -d /proc/$(cat /var/run/$NAME.pid); do killtree $(cat /var/run/$NAME.pid) 15 sleep 0.5 done rm /var/run/$NAME.pid echo "done" } status() { status_of_proc -p /var/run/$NAME.pid "" "etherpad-lite" && exit 0 || exit $? } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; status) status ;; *) echo "Usage: $NAME {start|stop|restart|status}" >&2 exit 1 ;; esac exit 0
Simpan dan tutup file. Jadikan skrip dapat dieksekusi dengan mengubah izin file, dan aktifkan untuk memulai saat boot.
chmod +x /etc/init.d/etherpad update-rc.d etherpad defaults /etc/init.d/etherpad start
Anda dapat memverifikasi bahwa aplikasi aktif dan berjalan pada port 9001 dengan perintah berikut.
systemctl status etherpad and netstat -tunlp | grep 9001
Langkah 8:Menyiapkan Proksi Terbalik
Karena Apache dan Nginx adalah salah satu server web paling populer di internet, pada langkah ini kami akan menunjukkan kepada Anda cara membuat proxy terbalik untuk mereka sehingga Anda dapat membuka situs web yang berisi Etherpad dengan nama domain. Ini juga memiliki manfaat karena tidak memerlukan nomor port yang ditentukan untuk mengakses Etherpad.
Kami berasumsi bahwa Anda telah menginstal Apache atau Nginx di server Anda. Anda dapat memeriksa status server web dengan perintah di bawah ini.
Untuk Apache2:
systemctl status apache2
Untuk Nginx:
systemctl status nginx
Jika Anda telah menginstal Apache2 di server Anda, Anda dapat membuat file konfigurasi virtual host baru sehingga Anda dapat mengakses aplikasi Etherpad dengan nama domain.
nano /etc/apache2/sites-available/domain_name.conf
tambahkan konten berikut ke file:
<VirtualHost *:80> ServerNamedomain_name.com
ServerAliaswww.domain_name.com
ServerSignature Off <IfModule mod_proxy.c> ProxyVia On ProxyRequests Off ProxyPass / http://server_IP_address:9001/ ProxyPassReverse / http://server_IP_address:9001/ ProxyPreserveHost on <Proxy *> Options FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Proxy> </IfModule> </VirtualHost>
Tentu saja, Anda perlu mengganti domain_name.com dengan nama domain terdaftar Anda yang sebenarnya, serta mengganti server_IP_address dengan alamat IP publik server Anda. Setelah Anda selesai mengedit file konfigurasi, simpan file dan keluar.
Modul Apache berikut harus diinstal:
a2enmod proxy a2enmod proxy_http a2enmod headers
Untuk mengaktifkan virtual host yang baru saja Anda buat, jalankan a2ensite
perintah:
a2ensite domain_name
Agar perubahan yang Anda buat diterapkan, Anda harus memulai ulang Apache:
apache2ctl restart
Jika Anda telah menginstal Nginx di server Anda, Anda dapat membuat blok server baru sehingga Anda dapat mengakses aplikasi Etherpad dengan nama domain dan tanpa nomor port.
Buat blok server etherpad baru dengan perintah:
nano /etc/nginx/sites-available/etherpad.conf
tambahkan konten berikut ke file:
server { listen 80; server_name domain_name.com; location / { proxy_pass http://server_IP_address:9001/ proxy_set_header Host $host; proxy_buffering off; } }
Anda harus mengganti domain_name.com dengan nama domain terdaftar Anda yang sebenarnya, serta mengganti server_IP_address dengan alamat IP publik server Anda. Setelah Anda selesai mengedit file konfigurasi, simpan file dan keluar.
Untuk mengaktifkan etherpad virtual host anda bisa membuat symlink dengan perintah:
ln -s /etc/nginx/sites-available/etherpad /etc/nginx/sites-enabled/
Setelah selesai, uji konfigurasi Nginx.
nginx -t
Sebelum Anda memulai dan mengaktifkan layanan Nginx, Anda perlu memastikan bahwa tidak ada kesalahan selama pengujian konfigurasi Nginx. Jika sudah selesai, Anda dapat menjalankan perintah berikut:
systemctl restart nginx systemctl enable nginx
Langkah 9:Mengakses Etherpad
Sekarang buka browser web favorit Anda dan masukkan nama domain Anda.http://domain_name.com/
Anda seharusnya dapat melihat editor Etherpad di browser Anda.
Masukkan nama Pad baru Anda dan klik tombol OK.
Anda sekarang seharusnya dapat melihat editor Etherpad seperti yang ditunjukkan pada gambar di bawah ini.
Untuk mengakses URL admin, tambahkan /admin/
di akhir nama domain Anda.
http://domain_name.com/admin/
Anda akan dimintai nama pengguna dan kata sandi administrator. Masukkan nama pengguna dan kata sandi admin Anda, lalu klik tombol Masuk.
Selamat. Anda telah berhasil menginstal dan mengonfigurasi editor Etherpad.
Dalam artikel ini, kami menunjukkan kepada Anda cara menginstal Etherpad di Debian 9. Sekarang Anda dapat terus menggunakan dan menjelajahi aplikasi open-source yang luar biasa ini.
Tentu saja, jika Anda adalah salah satu pelanggan Debian Hosting kami, Anda tidak perlu menginstal Etherpad di VPS Debian 9 Anda – cukup tanyakan kepada admin kami, duduk, dan santai. Admin kami akan segera menginstal dan mengkonfigurasi Etherpad di Debian 9 untuk Anda.
PS. Jika Anda menyukai posting ini tentang cara menginstal Etherpad di VPS Debian 9, silakan bagikan dengan teman-teman Anda di jejaring sosial menggunakan tombol bagikan di bawah ini, atau cukup tinggalkan komentar di bagian komentar. Terima kasih.