Etherpad - Ένας διαδικτυακός συνεταιρικός επεξεργαστής εγγράφων σε πραγματικό χρόνο για Linux


Το Etherpad είναι ένα δωρεάν εργαλείο επεξεργασίας εγγράφων βασισμένο στον ιστό, το οποίο επιτρέπει σε μια ομάδα χρηστών να εργάζονται από κοινού σε ένα έγγραφο σε πραγματικό χρόνο, όπως ένα πρόγραμμα επεξεργασίας πολλών προγραμμάτων αναπαραγωγής που εκτελείται σε ένα πρόγραμμα περιήγησης ιστού. Οι συντάκτες του Etherpad μπορούν να επεξεργάζονται και ταυτόχρονα να βλέπουν ο ένας τις επεξεργασίες του άλλου σε πραγματικό χρόνο με τη δυνατότητα να εμφανίζουν το κείμενο του συγγραφέα με τα δικά τους χρώματα.

Αυτό το εργαλείο διαθέτει ένα ξεχωριστό πλαίσιο συνομιλίας στην πλαϊνή γραμμή που επιτρέπει στους συγγραφείς να επικοινωνούν κατά την επεξεργασία. Το Etherpad είναι γραμμένο σε JavaScript τόσο από την πλευρά του διακομιστή όσο και από την πλευρά του πελάτη, έτσι ώστε να είναι εύκολο για τους προγραμματιστές να διατηρούν και να προσθέτουν νέες δυνατότητες.

Το Etherpad έχει σχεδιαστεί με τέτοιο τρόπο ώστε να μπορείτε να έχετε πρόσβαση σε όλα τα δεδομένα μέσω ενός καλά τεκμηριωμένου HTTP API. Αυτό το λογισμικό σάς βοηθά επίσης να εισάγετε/εξάγετε δεδομένα σε πολλές μορφές ανταλλαγής και συνοδεύεται επίσης από μεταφράσεις όπου οι συγγραφείς μπορούν να παρέχουν τη σωστή γλώσσα για τις τοπικές ρυθμίσεις τους.

Για την αναφορά σας, έχω επισυνάψει μια Demo του Etherpad Lite στον παρακάτω σύνδεσμο.

  1. Παρακολουθήστε την επίδειξη του EtherPad

Σε αυτό το σεμινάριο, θα περιγράψω πώς να εγκαταστήσετε και να ρυθμίσετε το Etherpad Lite μιας εφαρμογής συλλογικής επεξεργασίας εγγράφων σε πραγματικό χρόνο που βασίζεται στον ιστό σε RHEL, CentOS, Fedora, Debian, Ubuntu και Linux Mint.

Εγκατάσταση του Etherpad Lite σε Linux

Αρχικά, πρέπει να κατεβάσουμε και να εγκαταστήσουμε μερικές απαιτούμενες βιβλιοθήκες και εργαλεία ανάπτυξης. Ανοίξτε το τερματικό και εκτελέστε την ακόλουθη εντολή είτε ως root είτε προσθέτοντας sudo στην αρχή κάθε εντολής.

Βήμα 1: Εγκαταστήστε βιβλιοθήκες και πακέτα ανάπτυξης

Θα χρειαστείτε gzip, git, curl, libssl python, να αναπτύξετε βιβλιοθήκες, πακέτα python και gcc.

Σε RHEL/CentOS/Fedora
# yum install gzip git-core curl python openssl-devel && yum groupinstall "Development Tools" For FreeBSD: portinstall node, npm, git
Σε Debian/Ubuntu/Linux Mint
$ sudo apt-get install gzip git-core curl python libssl-dev pkg-config build-essential

Βήμα 2: Εγκαταστήστε το Node.js

Επιπλέον, θα χρειαστεί επίσης να κατεβάσετε και να μεταγλωττίσετε την πιο πρόσφατη σταθερή έκδοση Node.js από πακέτα προέλευσης χρησιμοποιώντας τις ακόλουθες εντολές.

$ wget http://nodejs.org/dist/node-latest.tar.gz
$ tar xvfvz node-latest.tar.gz
$ cd node-v0.10.23     [Replace a version with your own]
$ ./configure
$ make
$ sudo make install

Αφού εγκαταστήσετε με επιτυχία, επαληθεύστε την έκδοση Node.js χρησιμοποιώντας την εντολή ως εξής.

$ node --version

v0.10.23

Βήμα 3: Λήψη και εγκατάσταση του Etherpad Lite

Θα δημιουργήσουμε έναν ξεχωριστό χρήστη που ονομάζεται \etherpad” για να εκτελεί ανεξάρτητα την εφαρμογή Etherpad. Επομένως, πρώτα δημιουργήστε έναν χρήστη με τον αρχικό του κατάλογο.

# useradd --create-home etherpad

Τώρα μεταβείτε σε χρήστη \etherpad” και κατεβάστε την πιο πρόσφατη σταθερή έκδοση του Etherpad Lite χρησιμοποιώντας το χώρο αποθήκευσης GIT όπως φαίνεται.

# su - etherpad
$ cd /home/etherpad
$ git clone http://github.com/ether/etherpad-lite.git

Μόλις κατεβάσετε τα αρχεία προέλευσης, μεταβείτε στον πρόσφατα δημιουργημένο κατάλογο που περιέχει τον κλωνοποιημένο πηγαίο κώδικα.

$ cd etherpad-lite/bin

Τώρα, εκτελέστε το σενάριο run.sh.

$ ./run.sh
Δείγμα εξόδου
Copy the settings template to settings.json...
Ensure that all dependencies are up to date...  If this is the first time you have run Etherpad please be patient.
[2013-12-17 05:52:23.604] [WARN] console - DirtyDB is used. This is fine for testing but not recommended for production.
[2013-12-17 05:52:24.256] [INFO] console - Installed plugins: ep_etherpad-lite
[2013-12-17 05:52:24.279] [INFO] console - Your Etherpad git version is 7d47d91
[2013-12-17 05:52:24.280] [INFO] console - Report bugs at https://github.com/ether/etherpad-lite/issues
[2013-12-17 05:52:24.325] [INFO] console -    info  - 'socket.io started'
[2013-12-17 05:52:24.396] [INFO] console - You can access your Etherpad instance at http://0.0.0.0:9001/
[2013-12-17 05:52:24.397] [WARN] console - Admin username and password not set in settings.json.  To access admin please uncomment and edit 'users' in settings.json

Βήμα 4: Πρόσβαση και δημιουργία νέου Pad στο Etherpad Lite

Τώρα θα πρέπει να μπορείτε να περιηγηθείτε στη διεπαφή ιστού του Etherpad Lite στη διεύθυνση http://localhost:9001 ή http://your-ip-address:9001< σε ένα πρόγραμμα περιήγησης ιστού.

Δημιουργήστε ένα νέο έγγραφο δίνοντας ένα Όνομα πληκτρολογίου. Θυμηθείτε, πληκτρολογήστε νέο όνομα όταν δημιουργείτε ένα νέο έγγραφο ή πληκτρολογήστε το όνομα του εγγράφου που έχετε επεξεργαστεί προηγουμένως για πρόσβαση.

Για παράδειγμα, έχω δημιουργήσει ένα νέο έγγραφο που ονομάζεται \tecmint. Οι χρήστες μπορούν να δημιουργήσουν πολλά νέα pads σε ξεχωριστά παράθυρα, το παράθυρο εγγράφου κάθε χρήστη εμφανίζεται σε άλλο παράθυρο αυτόματα σε πραγματικό χρόνο. Παράθυρο κάθε χρήστη επισημαίνεται σε δύο διαφορετικά χρώματα και επίσης οι χρήστες μπορούν να αλληλεπιδρούν μεταξύ τους χρησιμοποιώντας το ενσωματωμένο πλαίσιο συνομιλίας.

Κάθε έγγραφο που δημιουργήθηκε πρόσφατα έχει τη δική του δομή URL. Για παράδειγμα, το νέο μου pad \tecmint” έχει μια URL ως http://your-ip-address:9001/p/tecmint . Μπορείτε να μοιραστείτε αυτό το έγγραφο URL με τους φίλους και τους συναδέλφους σας. Μπορείτε ακόμη και να ενσωματώσετε το παράθυρο του προγράμματος επεξεργασίας σε μια άλλη ιστοσελίδα HTML ως iframe.

Μπορείτε να αποθηκεύσετε το έγγραφο ενώ η επεξεργασία είναι σε εξέλιξη κάνοντας κλικ στο κουμπί ΑΣΤΕΡΙ, ωστόσο δημιουργούνται περιοδικά. Για να αποκτήσετε πρόσβαση σε μια αποθηκευμένη αναθεώρηση του εγγράφου, προσθέστε τον αριθμό της αποθηκευμένης αναθεώρησης. Για παράδειγμα, εάν θέλετε να δείτε τον αποθηκευμένο αριθμό αναθεώρησης (δηλαδή 2) σε αυτήν την περίπτωση, αντικαταστήστε τον αριθμό 6 με 2 στο http://your-ip-address:9001/p/tecmint/6/export/text.

Το Etherpad διαθέτει επίσης ενσωματωμένη δυνατότητα που ονομάζεται εισαγωγή και εξαγωγή, όπου μπορείτε να εισάγετε οποιοδήποτε εξωτερικό έγγραφο ή να εξαγάγετε ένα τρέχον αποθηκευμένο έγγραφο σε ξεχωριστό αρχείο. Το έγγραφο μπορεί να ληφθεί σε HTML, Άνοιγμα εγγράφου, Microsoft Word, PDF ή Απλό κείμενο< μορφή.

Μια δυνατότητα ρυθμιστικό χρόνου δίνει τη δυνατότητα σε οποιονδήποτε να εξερευνήσει το ιστορικό του pad.

Βήμα 5: Χρήση του Etherpad Lite με το MySQL Backend

Από προεπιλογή, το Etherpad αποθηκεύει έγγραφα σε μια βάση δεδομένων επίπεδων αρχείων. Σας προτείνω να χρησιμοποιήσετε το MySQL ως backend για την αποθήκευση εγγράφων που έχετε δημιουργήσει και επεξεργαστείτε. Για αυτό, πρέπει να έχετε εγκατεστημένο το MySQL στο σύστημά σας. Εάν δεν το έχετε, εγκαταστήστε το στο σύστημα, μπορείτε να το εγκαταστήσετε χρησιμοποιώντας τις ακόλουθες εντολές ως χρήστης root ή χρησιμοποιώντας το sudo.

Σε RHEL/CentOS/Fedora
# yum install mysql-server mysql
# service mysqld start
# chkconfig mysqld on
Σε Debian/Ubuntu/Linux Mint
# apt-get install mysql-server mysql-client
# service mysqld start

Αφού εγκατασταθεί το MySQL, συνδεθείτε στο mysql shell εκτελώντας μια ακόλουθη εντολή.

# mysql -u root -p

Μόλις μπείτε στο mysql shell, εκδώστε την ακόλουθη εντολή για να δημιουργήσετε τη βάση δεδομένων.

create database etherpad_lite;

Παραχωρήστε δικαιώματα σε έναν νέο λογαριασμό βάσης δεδομένων. Αντικαταστήστε τον \κωδικό πρόσβασης με τον δικό σας κωδικό πρόσβασης.

grant all privileges on etherpad_lite.* to 'etherpad'@'localhost' identified by 'your-password';

Αφήστε τον πελάτη mysql.

exit;

Τώρα, μεταβείτε στον χρήστη etherpad και μεταβείτε στον κατάλογο etherpad και εκτελέστε τις ακόλουθες εντολές:

# su - etherpad
$ cd /home/etherpad/etherpad-lite    
$ cp settings.json.template settings.json

Στη συνέχεια, ανοίξτε το settings.json με το πρόγραμμα επεξεργασίας της επιλογής σας και αλλάξτε τις ρυθμίσεις όπως φαίνεται παρακάτω.

# vi settings.json

Βρείτε το παρακάτω κείμενο.

"sessionKey" : "",

Προσθέστε το SECURESTRING με τουλάχιστον 10 αλφαριθμητική συμβολοσειρά.

"sessionKey" : "Aate1mn160",

Στη συνέχεια βρείτε:

"dbType" : "dirty",
  //the database specific settings
  "dbSettings" : {
                   "filename" : "var/dirty.db"
                 },

Και σχολίασε το ως εξής:

// "dbType" : "dirty", */
  //the database specific settings
  // "dbSettings" : {
  //                   "filename" : "var/dirty.db"
  //                 },

Στη συνέχεια ορίστε τις ρυθμίσεις mysql και διαχειριστή όπως φαίνεται παρακάτω.

  /* An Example of MySQL Configuration
   "dbType" : "mysql",
   "dbSettings" : {
                    "user"    : "etherpad",
                    "host"    : "localhost",
                    "password": "your-password",
                    "database": "etherpad_lite"
                  },

  */
  "users": {
    "admin": {
      "password": "your-password",
      "is_admin": true
    },

Βεβαιωθείτε ότι έχετε αντικαταστήσει τον \κωδικό πρόσβασης με τον κωδικό πρόσβασης που δημιουργήσατε παραπάνω κατά τη δημιουργία ενός νέου λογαριασμού βάσης δεδομένων και ενός κωδικού πρόσβασης διαχειριστή με τη δική σας τιμή. Τώρα, πρέπει να εγκαταστήσουμε ορισμένα πρόσθετα πακέτα εξαρτήσεων με παρακάτω εντολή.

./bin/installDeps.sh

Μόλις ολοκληρωθεί το σενάριο, θα χρειαστεί να εκτελέσουμε ξανά το σενάριο Etherpad. Έτσι, μπορεί να δημιουργήσει τους κατάλληλους πίνακες στη βάση δεδομένων.

./bin/run.sh

Μετά τη φόρτωση του Etherpad με επιτυχία, πατήστε Ctrl+C για να τερματιστεί η διαδικασία. Ξανά συνδεθείτε στο mysql shell και αλλάξτε τη βάση δεδομένων για να τη χρησιμοποιήσετε σωστά.

mysql -u root -p
alter database etherpad_lite character set utf8 collate utf8_bin;
use etherpad_lite;
alter table store convert to character set utf8 collate utf8_bin;
exit;

Τέλος, εγκαταστήσαμε με επιτυχία και διαμορφώσαμε το Etherpad ώστε να χρησιμοποιούμε το MySQL backend. Τώρα εκτελέστε ξανά το etherpad για να χρησιμοποιήσετε το MySQL ως backend.

./bin/run.sh

Το σενάριο θα αρχικοποιήσει το Etherpad και στη συνέχεια θα ξεκινήσει τη διαδικασία. Λάβετε υπόψη ότι η εφαρμογή Etherpad θα τερματίσει τη διεργασία της όταν κλείσετε το παράθυρο της περιόδου σύνδεσης του τερματικού σας. Προαιρετικά, μπορείτε να χρησιμοποιήσετε την εντολή οθόνης για να τοποθετήσετε το Etherpad σε μια περίοδο λειτουργίας οθόνης για εύκολη πρόσβαση.

Αυτό είναι προς το παρόν, υπάρχουν πολλά άλλα πράγματα που μπορείτε να εξερευνήσετε και να βελτιώσετε την εγκατάσταση Etherpad, τα οποία δεν καλύπτονται εδώ. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε το Etherpad ως υπηρεσία σε ένα σύστημα Linux ή να παρέχετε ασφαλή πρόσβαση στο HTTPS/SSL του χρήστη σας ισχυρή> σύνδεση. Για περισσότερες πληροφορίες σχετικά με περαιτέρω ρυθμίσεις, επισκεφθείτε την επίσημη σελίδα στη διεύθυνση:

  1. Etherpad Lite Wiki