In questo tutorial, ti mostreremo come installare Etherpad Lite su Debian Wheezy. Etherpad Lite è un editor basato sul Web Open Source che fornisce editing collaborativo in tempo reale, inclusa la chat box integrata. Tutto questo avviene su uno dei nostri piani di hosting VPS Linux, ma dovrebbe funzionare altrettanto bene su qualsiasi altra installazione Linux.
Il comando seguente installerà tutti i pacchetti necessari
apt-get install gzip git-core curl python libssl-dev pkg-config \ build-essential python g++ make checkinstall \ nginx-full mysql-server
Successivamente dobbiamo compilare e installare nodejs
cd /usr/src/ wget http://nodejs.org/dist/node-latest.tar.gz tar xzvf node-latest.tar.gz && cd node-v* ./configure && checkinstall
Quando si apre la finestra di dialogo, inserisci "3" e rimuovi la "v" davanti al numero di versione.
Installa nodejs con il seguente comando
dpkg -i node_*
Crea un database MySQL o MariaDB
CREATE DATABASE etherpad CHARACTER SET utf8 COLLATE utf8_general_ci; GRANT ALL PRIVILEGES ON etherpad.* TO etherpad@localhost IDENTIFIED BY '__yourPasswd__'; FLUSH PRIVILEGES; \q
Installa e configura Etherpad Lite
Vai alla directory in cui vuoi installare Etherpad Lite e clona il repository git
cd /var/www/ git clone git://github.com/ether/etherpad-lite.git
Modifica il file di configurazione
cd etherpad-lite/ cp settings.json.template settings.json vim settings.json
e modificare le seguenti impostazioni:
// change the IP Address "ip": "127.0.0.1",
// set a session key "sessionKey" : "rAnD0m5tRIng",
//configure the connection settings "dbType" : "mysql", "dbSettings" : { "user" : "etherpad", "host" : "localhost", "password": "__yourPassword__", "database": "etherpad" },
// add admin user "users": { "admin": { "password": "__yourAdminPassword__", "is_admin": true } },
Crea un utente di sistema
adduser --system --home=/var/www/etherpad-lite/ --group etherpad chown -R etherpad: /var/www/etherpad-lite/
Avvia Etherpad Lite per la prima volta:
su -c "/var/www/etherpad-lite/bin/run.sh" -s /bin/bash etherpad
Se tutto è a posto, uccidi tutti i processi appartenenti all'utente etherpad
pkill -u etherpad
Crea uno script di inizializzazione utilizzando il tuo editor preferito
#!/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
chmod +x /etc/init.d/etherpad-lite update-rc.d etherpad-lite defaults /etc/init.d/etherpad-lite start
Crea un nuovo host virtuale (blocco server)
vim /etc/nginx/sites-available/domain.tld.conf server { listen 80; server_name domain.tld; location / { proxy_pass http://localhost:9001/; proxy_set_header Host $host; proxy_buffering off; } } ln -s /etc/nginx/sites-available/domain.tld /etc/nginx/sites-enabled/domain.tld /etc/init.d/nginx restart
Nel caso in cui utilizzi Apache, puoi utilizzare la seguente direttiva host virtuale
vim /etc/apache2/sites-available/domain.tld <VirtualHost *:80> ServerName domain.tld ServerSignature Off <IfModule mod_proxy.c> ProxyVia On ProxyRequests Off ProxyPass / http://127.0.0.1:9001/ ProxyPassReverse / http://127.0.0.1:9001/ ProxyPreserveHost on <Proxy *> Options FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Proxy> </IfModule> </VirtualHost> ln -s /etc/apache2/sites-available/domain.tld /etc/apache2/sites-enabled/domain.tld a2enmod proxy proxy_http /etc/init.d/apache2 restart
Questo è tutto! Ora puoi accedere a Etherpad Lite dal tuo browser.
Homepage del progetto Etherpad su GitHub
Se stai cercando altre opzioni, potresti voler leggere la nostra guida su Come installare Etherpad su Debian 9.