V tomto článku vám ukážeme, jak nainstalovat Etherpad na spravovaný server Debian 9.
Etherpad je editor v reálném čase, který je založený na webu a je dodáván jako balíček s otevřeným zdrojovým kódem. Tato aplikace umožňuje uživatelům současně upravovat dokumenty v reálném čase a vidět rozdíly pomocí barevného textu. Etherpad má také chatovací box, který uživatelům umožňuje snadno mezi sebou komunikovat, což dále zvyšuje produktivitu. Instalace nebude trvat příliš dlouho, takže začnemez
Krok 1:Připojte se k vašemu serveru
Než začneme, musíte se připojit k serveru přes SSH jako uživatel root nebo jako účet správce. Chcete-li to provést, použijte následující příkaz:
ssh root@IP_ADDRESS -p PORT_NUMBER
Samozřejmě budete muset nahradit IP_ADDRESS
a PORT_NUMBER
s IP adresou vašeho příslušného serveru a číslem portu SSH. V případě potřeby nahraďte „root“ uživatelským jménem svého účtu správce.
Po přihlášení se pomocí následujících příkazů ujistěte, že je váš server aktuální:
apt update apt upgrade
Krok 2:Instalace závislostí
Po úspěšném přihlášení budete muset spustit následující příkaz, abyste mohli nainstalovat všechny závislosti pro instalaci Node.js.
apt install gzip git curl python libssl-dev pkg-config gcc g++ make build-essential -y
Krok 3:Nainstalujte Node.js
Etherpad vyžaduje Node.js verze 8.9.0 nebo vyšší, takže v tomto tutoriálu nainstalujeme nejnovější verzi Node.js (v době psaní tohoto návodu).
Povolte úložiště NodeSource pomocí následujícího příkazu curl:
curl -sL https://deb.nodesource.com/setup_11.x | sudo bash -
Nyní můžete nainstalovat Node.js pomocí následujícího příkazu:
apt install -y nodejs
Verze nodejs a npm můžete ověřit pomocí příkazů níže.
nodejs --version npm --version
Krok 4:Instalace a konfigurace MySQL
Databázový server je jedním z požadavků ke spuštění Etherpadu. Můžete nainstalovat MySQL, což je skvělý databázový server s otevřeným zdrojovým kódem. Pro instalaci MySQL na váš server zadejte následující příkaz:
apt install mysql-server mysql-client
Po instalaci MySQL na váš server můžete pomocí níže uvedených příkazů službu MySQL zastavit, spustit a povolit.
systemctl start mysql systemctl stop mysql systemctl enable mysql
Další příkaz je volitelný, ale námi doporučený. Příkaz můžete spustit, pokud chcete zabezpečit server MySQL zakázáním vzdáleného přístupu root, odebráním testovací databáze a nastavením hesla uživatele root pro MySQL.
mysql_secure_installation
Až budete vyzváni, odpovězte na níže uvedené otázky podle průvodce.
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
Restartujte server MySQL, aby se změny projevily.
systemctl restart mysql
Nyní byste měli být schopni se přihlásit do prostředí MySQL pomocí příkazu:
mysql -u root -p
Poté zadejte heslo, které jste vytvořili výše, abyste se mohli přihlásit. Jakmile jste v prostředí MySQL, můžete použít následující příkaz a vytvořit databázi s názvem etherpad_db
pro aplikaci Etherpad.
CREATE DATABASE etherpad_db;
Chcete-li uživateli etherpad_user udělit plný přístup k etherpad_db, spusťte příkaz:
GRANT ALL PRIVILEGES ON etherpad_db.* TO etherpad_user@localhost IDENTIFIED BY 'Str0n9Pas$worD';
POZNÁMKA: Nezapomeňte nahradit „Str0n9Pas$worD“ jedinečným, silným heslem. Nyní můžete použít operaci flush privilegií k opětovnému načtení tabulek grantů, po kterých můžete opustit prostředí MySQL.
FLUSH PRIVILEGES; EXIT;
Krok 5:Stáhněte a nainstalujte Etherpad
Pomocí následujících příkazů vytvoříte nového uživatele s názvem etherpad a přepnete se na tohoto uživatele.
useradd -m -s /bin/bash etherpad su - etherpad
Spusťte níže uvedený příkaz git a naklonujte úložiště etherpad.
git clone git://github.com/ether/etherpad-lite.git
Po úspěšném naklonování úložiště etherpad můžete vstoupit do adresáře etherpad-lite a spustit bin/run.sh
skript pro spuštění Etherpadu.
cd etherpad-lite/ bin/run.sh
Etherpad byl nyní dočasně spuštěn. Chcete-li zobrazit domovskou stránku Etherpadu, otevřete svůj preferovaný webový prohlížeč a zadejte veřejnou IP adresu svého serveru s portem 9001.
http://server_IP_address:9001/
Měli byste vidět domovskou stránku Etherpadu.
Chcete-li aplikaci zastavit, stiskněte ve svém terminálu „Ctrl+c“. Problém s tím je, že služba běží pouze dočasně – pouze když je otevřená ve vaší terminálové relaci. Aby server trvale běžel, musíte pro něj vytvořit službu. To je vysvětleno v kroku 7 .
Krok 6:Nakonfigurujte Etherpad
Po tomto kroku z článku provedete základní konfiguraci editoru Etherpad.
Přihlaste se k uživateli etherpadu a vstupte do adresáře etherpad-lite.
su - etherpad cd etherpad-lite/
Otevřete soubor settings.json
konfigurační soubor pomocí preferovaného textového editoru. V našem příkladu použijeme jako textový editor nano.
nano settings.json
Změňte IP adresu v konfiguračním souboru na „IP_adresa_serveru“ a volitelně můžete změnit naslouchací port na jiný než výchozí. V našem příkladu použijeme výchozí port.
"ip": "server_IP_address", "port" : 9001,
Zakažte „špinavou“ databázi, která je výchozí v konfiguračním souboru, pomocí značek komentáře /*
a */
jak je znázorněno v příkladu níže.
/* "dbType" : "dirty", "dbSettings" : { "filename" : "var/dirty.db" }, */
Nyní odkomentujte konfiguraci databáze MySQL a zadejte informace o MySQL, které jste vytvořili ve čtvrtém kroku tohoto článku.
"dbType" : "mysql", "dbSettings" : { "user" : "etherpad_user", "host" : "localhost", "port" : 3306, "password": "Str0n9Pas$worD", "database": "etherpad_db", "charset" : "utf8mb4" },
Uživatele správce můžete povolit odstraněním komentáře z těchto řádků a nahrazením Str0n9Pas$worD
s heslem dle vašeho výběru.
"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 } },
Jakmile dokončíte všechny úpravy, můžete uložit konfigurační soubor a skončit.
Krok 7:Nastavení Etherpadu jako služby
Metoda 1:Systemd
V tomto kroku nakonfigurujete Etherpad tak, aby běžel jako systémová služba na vašem systému Debian 9.
Spusťte následující příkaz, abyste mohli vytvořit nový soubor služby s názvem ‚etherpad.service‘.
cd /etc/systemd/system/ && nano etherpad.service
Poté vložte následující konfiguraci.
[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
Poté můžete uložit konfigurační soubor a ukončit. Pomocí níže uvedeného příkazu znovu načtěte seznam služeb systemd na váš server.
systemctl daemon-reload
Nyní můžete použít systemctl
příkaz, abyste mohli snadno a trvale spustit a povolit aplikaci Etherpad. Když je služba povolena, spustí se automaticky při každém spuštění systému.
systemctl start etherpad systemctl enable etherpad
Metoda 2:Init.d
Pokud dáváte přednost použití init, můžete vytvořit nový počáteční skript pomocí následujícího příkazu.
nano /etc/init.d/etherpad
Vložte následující skript.
#!/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
Uložte a zavřete soubor. Udělejte skript spustitelný změnou oprávnění souboru a povolte jeho spuštění při bootování.
chmod +x /etc/init.d/etherpad update-rc.d etherpad defaults /etc/init.d/etherpad start
Pomocí následujících příkazů můžete ověřit, že aplikace běží na portu 9001.
systemctl status etherpad and netstat -tunlp | grep 9001
Krok 8:Nastavení reverzního proxy
Protože Apache a Nginx jsou jedny z nejpopulárnějších webových serverů na internetu, v tomto kroku vám ukážeme, jak pro ně vytvořit reverzní proxy, abyste mohli otevřít web obsahující Etherpad s názvem domény. To má navíc tu výhodu, že pro přístup k Etherpadu není vyžadováno zadání čísla portu.
Předpokládáme, že jste již na svůj server nainstalovali Apache nebo Nginx. Stav webového serveru můžete zkontrolovat pomocí příkazů níže.
Pro Apache2:
systemctl status apache2
Pro Nginx:
systemctl status nginx
Pokud máte na svém serveru nainstalovaný Apache2, můžete vytvořit nový konfigurační soubor virtuálního hostitele, abyste mohli přistupovat k aplikaci Etherpad s názvem domény.
nano /etc/apache2/sites-available/domain_name.conf
přidejte do souboru následující obsah:
<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>
Samozřejmě budete muset nahradit domain_name.com vaším skutečným registrovaným názvem domény a také nahradit server_IP_address veřejnou IP adresou vašeho serveru. Po dokončení úprav konfiguračního souboru soubor uložte a ukončete.
Musí být nainstalovány následující moduly Apache:
a2enmod proxy a2enmod proxy_http a2enmod headers
Chcete-li povolit virtuální hostitele, který jste právě vytvořili, spusťte a2ensite
příkaz:
a2ensite domain_name
Aby se provedené změny projevily, musíte restartovat Apache:
apache2ctl restart
Pokud máte na svém serveru nainstalovaný Nginx, můžete vytvořit nový blok serveru, abyste mohli přistupovat k aplikaci Etherpad s názvem domény a bez čísla portu.
Vytvořte nový blok serveru etherpad pomocí příkazu:
nano /etc/nginx/sites-available/etherpad.conf
přidejte do souboru následující obsah:
server { listen 80; server_name domain_name.com; location / { proxy_pass http://server_IP_address:9001/ proxy_set_header Host $host; proxy_buffering off; } }
Budete muset nahradit domain_name.com vaším skutečným registrovaným názvem domény a také nahradit server_IP_address veřejnou IP adresou vašeho serveru. Po dokončení úprav konfiguračního souboru soubor uložte a ukončete.
Pro aktivaci virtuálního hostitele etherpadu můžete vytvořit symbolický odkaz pomocí příkazu:
ln -s /etc/nginx/sites-available/etherpad /etc/nginx/sites-enabled/
Jakmile to uděláte, otestujte konfiguraci Nginx.
nginx -t
Než spustíte a povolíte službu Nginx, musíte se ujistit, že během testu konfigurace Nginx nedošlo k žádným chybám. Pokud se vše zkontroluje, můžete spustit následující příkazy:
systemctl restart nginx systemctl enable nginx
Krok 9:Přístup k Etherpadu
Nyní otevřete svůj oblíbený webový prohlížeč a zadejte název své domény.http://domain_name.com/
Ve svém prohlížeči byste měli vidět editor Etherpad.
Zadejte název vaší nové podložky a klikněte na tlačítko OK.
Nyní byste měli být schopni vidět editor Etherpad, jak je znázorněno na obrázku níže.
Chcete-li získat přístup k adrese URL správce, přidejte /admin/
na konec názvu vaší domény.
http://domain_name.com/admin/
Budete vyzváni k zadání uživatelského jména a hesla správce. Zadejte své uživatelské jméno a heslo správce a poté klikněte na tlačítko Přihlásit se.
Gratulujeme. Úspěšně jste nainstalovali a nakonfigurovali editor Etherpad.
V tomto článku jsme vám ukázali, jak nainstalovat Etherpad na Debian 9. Nyní můžete pokračovat v používání a prozkoumávání této neuvěřitelné open-source aplikace.
Samozřejmě, pokud jste jedním z našich zákazníků Debian Hosting, nemusíte Etherpad instalovat na svůj Debian 9 VPS – jednoduše se zeptejte našich administrátorů, posaďte se a relaxujte. Naši administrátoři vám okamžitě nainstalují a nakonfigurují Etherpad na Debian 9.
PS. Pokud se vám tento příspěvek o tom, jak nainstalovat Etherpad na Debian 9 VPS, líbil, sdílejte jej se svými přáteli na sociálních sítích pomocí níže uvedených tlačítek pro sdílení nebo jednoduše zanechte komentář v sekci komentářů. Děkuji.