Ինչպես տեղադրել Etherpad համագործակցության խմբագիր Ubuntu 24.04 սերվերի վրա
Այս ձեռնարկը գոյություն ունի ՕՀ-ի այս տարբերակների համար
- Ubuntu 24.04 (Noble Numbat)
- Ubuntu 20.04 (Կիզակետային Fossa)
- Ubuntu 18.04 (Bionic Beaver)
Այս էջում
- Նախադրյալներ
- Կախվածությունների տեղադրում
- MariaDB սերվերի կարգավորում
- Etherpad Lite-ի տեղադրում
- Etherpad-ի գործարկումը որպես համակարգային ծառայություն
- Nginx-ի կարգավորումը որպես հակադարձ վստահված անձ
- Etherpad-ի ապահովում HTTPS-ով
- Մուտք գործել Etherpad
- Եզրակացություն
Etherpad-ը բաց կոդով համագործակցային և իրական ժամանակի տեքստային խմբագրիչ է ձեր թիմի համար, որը հասանելի է ցանկացած վայրից և ցանկացած ժամանակ, քանի որ Etherpad-ը վեբ վրա հիմնված տեքստային խմբագրիչ է: Etherpad-ն աջակցում է տարբերակների և ներկառուցված ֆորմատավորման թիմերի համար և առաջարկում է շատ հարմարեցված խմբագիր՝ տարբեր պլագինների աջակցությամբ: Այն նաև աջակցում է փաստաթղթերի ժամանակակից ձևաչափերին, ինչպիսիք են doc, pdf, odt, markdown և այլն:
Այս ուղեցույցում մենք ձեզ կուղեկցենք Ubuntu 24.04 սերվերի վրա Etherpad-ի համագործակցության խմբագրիչի տեղադրման գործընթացով: Դուք կստեղծեք Etherpad-ը MariaDB տվյալների բազայի սերվերով, Nginx-ը՝ որպես հակադարձ վստահված անձ, այնուհետև կապահովեք Etherpad-ը HTTPS-ով Certbot-ի և Letsencrypt-ի միջոցով:
Նախադրյալներ
Այս ուղեցույցով սկսելու համար համոզվեք, որ ունեք հետևյալը.
Ubuntu 24.04 սերվեր:
Ադմինիստրատորի արտոնություններ ունեցող ոչ արմատային օգտատեր:
Սերվերի IP հասցեին ուղղված տիրույթի անուն:
Կախվածությունների տեղադրում
Etherpad-ը իրական ժամանակի համատեղ խմբագիր է, որը գրված է Node.js-ում: Այն տեղադրելու համար դուք պետք է տեղադրեք փաթեթային կախվածություններ, ինչպիսիք են Node.js-ը, NPM-ը և Git-ը: Etherpad-ը նաև տվյալների բազայի համար պահանջում էր Python3 և MySQL/MariaDB:
Նախ թարմացրեք ձեր Ubuntu պահեստը հետևյալով.
sudo apt update
Այժմ տեղադրեք կախվածություններ Etherpad-ի համար՝ օգտագործելով ստորև նշված հրամանը: Այս հրամանով դուք կտեղադրեք MariaDB սերվերը, Nginx-ը, Node.js-ը, Python3-ը, Git-ը և որոշ կարևոր գործիքներ:
sudo apt install mariadb-server nginx nodejs npm gzip git curl python3 libssl-dev
Տեղադրումը հաստատելու համար մուտքագրեք Y:
Տեղադրումից հետո ստուգեք MariaDB և Nginx ծառայությունները, որպեսզի համոզվեք, որ երկու ծառայություններն էլ աշխատում են:
Ստուգեք MariaDB ծառայությունը հետևյալով.
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
Ինչպես տեսնում եք ստորև, MariaDB ծառայությունն աշխատում է և ավտոմատ կերպով կսկսվի բեռնման ժամանակ:
Այժմ ստուգեք Nginx ծառայությունը՝ օգտագործելով ստորև նշված հրամանը: Դուք պետք է ստանաք նմանատիպ արդյունք, երբ Nginx ծառայությունն աշխատում և միացված է:
sudo systemctl is-enabled nginx
sudo systemctl status nginx
Վերջապես, հրամանով ստուգեք Node.js տարբերակը.
node -v
Համոզվեք, որ ունեք Node.js v18.x կամ ավելին: Etherpad-ն աջակցում է Node.js v18 և ավելի բարձր տարբերակ:
MariaDB սերվերի կարգավորում
Կախվածությունները տեղադրելուց հետո դուք կկարգավորեք MariaDB սերվերը և կստեղծեք նոր տվյալների բազա և օգտվող Etherpad-ի համար: Դուք կապահովեք MariaDB-ն՝ օգտագործելով «mariadb-secure-installation» կոմունալ ծրագիրը, այնուհետև կարգավորեք տվյալների բազան և օգտվողը MariaDB հաճախորդի միջոցով:
Ձեր MariaDB սերվերը ապահովելու համար կատարեք հետևյալը.
sudo mariadb-secure-installation
Ձեզ կառաջարկվի MariaDB սերվերի կոնֆիգուրացիաներ.
- MariaDB-ի լռելյայն տեղադրումը կատարվում է առանց գաղտնաբառի, սեղմեք ENTER, երբ գաղտնաբառը պահանջվում է:
- Այժմ մուտքագրեք Y՝ MariaDB արմատային գաղտնաբառը կարգավորելու համար: Այնուհետև մուտքագրեք MariaDB-ի նոր գաղտնաբառը և կրկնեք գաղտնաբառը:
- Մուտքագրեք Y՝ անանուն օգտվողին ձեր MariaDB տեղադրումից հեռացնելու համար:
- Կրկին մուտքագրեք Y, երբ ձեզ հուշում են անջատել MariaDB արմատային օգտվողի հեռավոր մուտքը:
- Մուտքագրեք Y՝ ձեր MariaDB-ից տվյալների բազայի լռելյայն թեստը հեռացնելու համար:
- Վերջապես, մուտքագրեք Y՝ աղյուսակի արտոնությունները վերաբեռնելու և նոր փոփոխություններ կիրառելու համար:
MariaDB սերվերը ապահովելուց և կազմաձևելուց հետո դուք կստեղծեք նոր տվյալների բազա և օգտվող Etherpad-ի համար:
Մուտք գործեք MariaDB սերվեր հետևյալ հրամանով. Մուտքագրեք MariaDB արմատային գաղտնաբառը, երբ ձեզ հուշեն:
sudo mariadb -u root -p
Այնուհետև գործարկեք հետևյալ MariaDB հարցումները՝ «etherpad_db» նոր տվյալների բազա ստեղծելու համար, «etherpad» օգտվող՝ «StrongPasswordEtherpadDB» գաղտնաբառով: Դուք կարող եք հարմարեցնել տվյալների բազայի հետևյալ մանրամասները ձեր տեղեկատվության հետ:
CREATE DATABASE etherpad_db;
CREATE USER etherpad@localhost IDENTIFIED BY 'StrongPasswordEtherpadDB';
GRANT CREATE,ALTER,SELECT,INSERT,UPDATE,DELETE on etherpad_db.* to etherpad@localhost;
FLUSH PRIVILEGES;
Այժմ կատարեք հետևյալ հարցումը՝ համոզվելու, որ «etherpad» օգտվողը կարող է մուտք գործել «etherpad_db» տվյալների բազա:
SHOW GRANTS FOR etherpad@localhost;
Ստորև կարող եք տեսնել «etherpad» օգտվողին՝ «etherpad_db» տվյալների բազայի բազմաթիվ արտոնություններով:
Վերջապես, մուտքագրեք quit՝ MariaDB սերվերից դուրս գալու համար:
Etherpad Lite-ի տեղադրում
Տվյալների բազան և օգտատերը ստեղծելուց հետո դուք կներբեռնեք Etherpad-ի սկզբնական կոդը, կտեղադրեք Etherpad-ի կախվածությունը տեղադրողի սկրիպտով և այնուհետև կարգավորեք Etherpad-ի տեղադրումը MariaDB սերվերի հետ:
Լռելյայնորեն, Etherpad-ն օգտագործում է pnpm փաթեթի կառավարիչը՝ տեղադրումը կառավարելու համար, այնպես որ նախ պետք է «pnpm» գլոբալ տեղադրեք ձեր համակարգում:
Նախ, տեղադրեք pnpm փաթեթը գլոբալ (-g)՝ օգտագործելով հետևյալ npm հրամանը։ Լռելյայնորեն, Etherpad նախագիծն օգտագործում է pnpm որպես Node.js փաթեթի կառավարիչ՝ ստանդարտ npm-ի փոխարեն:
npm install pnpm -g
Այժմ գործարկեք ստորև նշված հրամանը՝ «etherpad» համակարգի նոր օգտվող ստեղծելու համար: Այս օգտվողը կօգտագործվի Etherpad հավելվածը գործարկելու համար:
sudo adduser --system --no-create-home --home=/opt/etherpad-lite --group etherpad
Հաջորդը, անցեք /opt և ներբեռնեք Etherpad-ի աղբյուրի կոդը «etherpad-lite» գրացուցակում git-ով: Այնուհետև փոխեք «/opt/etherpad-lite» գրացուցակի սեփականության իրավունքը «etherpad» օգտագործողի:
cd /opt && git clone --branch master https://github.com/ether/etherpad-lite.git
sudo chown -R etherpad:etherpad /opt/etherpad-lite
Այնուհետև անցեք «opt/etherpad-lite» գրացուցակ և տեղադրեք Node.js-ի կախվածությունները Etherpad-ի համար հետևյալով.
cd /opt/etherpad-lite
sudo su -s /bin/bash -c "./bin/run.sh" etherpad
Ստորև ներկայացված է Etherpad-ի կախվածությունների ներբեռնման գործընթացը՝ օգտագործելով pnpm փաթեթի կառավարիչը:
Կախվածությունները տեղադրելուց հետո Etherpad-ը պետք է ինքնաբերաբար աշխատի: Ստորև կարող եք տեսնել, որ Etherpad 2.0.3-ն աշխատում է:
Սեղմեք Ctrl+c՝ Etherpad-ի ընթացիկ գործընթացը դադարեցնելու համար: Դուք կկարգավորեք Etherpad-ը MariaDB տվյալների բազայի հետ:
Այժմ բացեք «settings.json» ֆայլը հետևյալ նանո խմբագրիչով:
nano settings.json
Փոխեք ձեր Etherpad-ի տեղադրման վերնագիրը:
"title": "Etherpad Ubuntu 24",
Փոխեք լռելյայն IP հասցեն 12.0.0.1 կամ localhost: Սա կսկսի Etherpad-ի գործընթացը միայն localhost-ում:
```
"ip": "127.0.0.1",
"port": 9001,
```
Մեկնաբանեք «կեղտոտ» տվյալների բազայի լռելյայն կազմաձևը հետևյալ կերպ.
/*
*"dbType": "dirty",
*"dbSettings": {
* "filename": "var/dirty.db"
*},
*/
Տեղադրեք ստորև նշված կոնֆիգուրացիան՝ MariaDB սերվերի հետ տվյալների բազա ստեղծելու համար: Համոզվեք, որ փոխել եք տվյալների բազայի տեղեկատվության մանրամասները ձերով:
"dbType" : "mysql",
"dbSettings" : {
"user": "etherpad",
"host": "127.0.0.1",
"port": 3306,
"password": "StrongPasswordEtherpadDB",
"database": "etherpad_db",
"charset": "utf8mb4"
},
Ավարտելուց հետո պահեք ֆայլը և դուրս եկեք խմբագրիչից:
Etherpad-ի գործարկումը որպես համակարգային ծառայություն
Այժմ, երբ դուք տեղադրել և կազմաձևել եք Etherpad-ը, դուք կստեղծեք նոր systemd ծառայության ֆայլ Etherpad-ի համար: Դրանով դուք կգործարկեք Etherpad-ը հետին պլանում և կարող եք կառավարել Etherpad-ը «systemctl» հրամանի միջոցով:
Ստեղծեք նոր systemd ծառայության ֆայլ Etherpad-ի համար '/etc/systemd/system/etherpad.service' նանո խմբագրիչով:
sudo nano /etc/systemd/system/etherpad.service
Ֆայլին ավելացրեք հետևյալ կոնֆիգուրացիան. Դրանով դուք կգործարկեք Etherpad-ը հետին պլանում՝ որպես համակարգային ծառայություն «pnpm» հրամանի միջոցով:
[Unit]
Description=Etherpad-lite, the collaborative editor.
After=syslog.target network.target mariadb.service
[Service]
Type=simple
User=etherpad
Group=etherpad
WorkingDirectory=/opt/etherpad-lite
ExecStart=/usr/local/bin/pnpm run prod
# use mysql plus a complete settings.json to avoid Service hold-off time over, scheduling restart.
Restart=always
[Install]
WantedBy=multi-user.target
Պահպանեք ֆայլը և դուրս եկեք:
Այժմ գործարկեք ստորև նշված հրամանը՝ systemd կառավարիչը վերաբեռնելու և Etherpad ծառայության ֆայլը կիրառելու համար:
sudo systemctl daemon-reload
Systemd-ի վերաբեռնումից հետո գործարկեք և միացրեք «etherpad» ծառայությունը հետևյալ systemctl հրամանով։
sudo systemctl start etherpad
sudo systemctl enable etherpad
Հաջորդը, գործարկեք ստորև նշված հրամանը՝ ստուգելու Etherpad ծառայության կարգավիճակը և համոզվելու, որ ծառայությունն աշխատում է:
sudo systemctl status etherpad
Ստորև կարող եք տեսնել, որ Etherpad ծառայությունն աշխատում է որպես ծառայություն:
Վերջապես, ստորև բերված «ss» հրամանով ստուգեք կանխադրված Etherpad պորտը 9001: Դուք պետք է տեսնեք, որ 9001 նավահանգիստն օգտագործվում է Etherpad գործընթացի միջոցով:
ss -tulpn | grep 9001
Nginx-ը որպես հակադարձ վստահված անձի կարգավորում
Այս ուղեցույցում դուք կգործարկեք Etherpad-ը Nginx-ով որպես հակադարձ պրոքսի: Այսպիսով, այժմ դուք կստեղծեք Nginx սերվերի բլոկի կոնֆիգուրացիան Etherpa-ի համար և համոզվեք, որ պատրաստել եք ձեր տիրույթի անունը Etherpad-ի համար:
Օգտագործեք հետևյալ նանո խմբագրիչի հրամանը՝ «/etc/nginx/sites-available/etherpad.conf» նոր Nginx սերվերի բլոկ ստեղծելու համար:
sudo nano /etc/nginx/sites-available/etherpad.conf
Ավելացրեք հետևյալ կոնֆիգուրացիան և փոխեք server_name տարբերակը ձեր տիրույթի անունով: Այս կոնֆիգուրացիայի դեպքում դուք կօգտագործեք Nginx-ը որպես Etherpad-ի հակադարձ պրոքսի, որն աշխատում է 9001 նավահանգստում:
```
server {
listen 80;
server_name etherpad.howtoforge.local;
access_log /var/log/nginx/eplite.access.log;
error_log /var/log/nginx/eplite.error.log;
location / {
proxy_pass http://127.0.0.1:9001;
proxy_buffering off; # be careful, this line doesn't override any proxy_buffering on set in a conf.d/file.conf
proxy_set_header Host $host;
proxy_pass_header Server;
# Note you might want to pass these headers etc too.
proxy_set_header X-Real-IP $remote_addr; # https://nginx.org/en/docs/http/ngx_http_proxy_module.html
proxy_set_header X-Forwarded-For $remote_addr; # EP logs to show the actual remote IP
proxy_set_header X-Forwarded-Proto $scheme; # for EP to set secure cookie flag when https is used
proxy_http_version 1.1; # recommended with keepalive connections
# WebSocket proxying - from https://nginx.org/en/docs/http/websocket.html
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
Ավարտելուց հետո պահեք և փակեք ֆայլը:
Այժմ գործարկեք ստորև նշված հրամանը՝ ակտիվացնելու սերվերի բլոկի «etherpad.conf» ֆայլը և ստուգելու ձեր Nginx շարահյուսությունը:
sudo ln -s /etc/nginx/sites-available/etherpad.conf /etc/nginx/sites-enabled/
sudo nginx -t
Դուք պետք է ստանաք «nginx-ը լավ է...փորձարկումը հաջողված է», համապատասխան Nginx շարահյուսությամբ:
Ի վերջո, գործարկեք ստորև նշված հրամանը՝ Nginx ծառայությունը վերագործարկելու և ձեր նոր սերվերի բլոկը կիրառելու համար: Հրամանը կատարելուց հետո ձեր Etherpad-ը հասանելի է Nginx վեբ սերվերի միջոցով:
sudo systemctl restart nginx
Etherpad-ի ապահովում HTTPS-ով
Nginx հակադարձ պրոքսի կարգավորելուց հետո դուք կապահովեք Etherpad-ը HTTPS-ով: Եթե դուք օգտագործում եք հանրային տիրույթը, կարող եք օգտագործել հետևյալ քայլերը՝ Certbot-ի և Letsencrypt-ի միջոցով HTTPS-ը կարգավորելու համար: Տեղական տիրույթի օգտատերերը կարող են օգտագործել ինքնուրույն ստորագրված վկայագրեր:
Տեղադրեք Certbot-ը և Certbot Nginx հավելվածը՝ օգտագործելով հետևյալ հրամանը. Երբ հուշում է, մուտքագրեք Y՝ տեղադրումը հաստատելու համար:
sudo apt install certbot python3-certbot-nginx
Այժմ գործարկեք հետևյալ certbot հրամանը՝ Letsencrypt-ից SSL/TLS վկայագրեր ստեղծելու համար: Համոզվեք, որ փոխեք տիրույթի անունը և էլփոստի հասցեն ձեր մանրամասներով:
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email -d etherpad.howtoforge.local
Գործընթացն ավարտելուց հետո ձեր վկայականները հասանելի կլինեն «/etc/letsencrypt/live/domain.com» գրացուցակում: Բացի այդ, ձեր Etherpad-ի տեղադրումը պետք է ավտոմատ կերպով գործարկվի HTTPS-ով Certbot Nginx հավելվածի միջոցով:
Մուտք գործել Etherpad
Այցելեք ձեր Etherpad տիրույթի անունը https://etherpad.howtoforge.local՝ ձեր Etherpad-ի տեղադրումը մուտք գործելու համար: Հաջողության դեպքում դուք կստանաք հետևյալ էջը.
Մուտքագրեք ձեր առաջին վահանակի նոր անունը և սեղմեք OK՝ հաստատելու համար:
Այժմ դուք կտեսնեք Etherpad-ի փաստաթղթերի խմբագրիչը: Այժմ դուք կարող եք խմբագրել փաստաթուղթը ձեր ընկերների կամ գործընկերների հետ միաժամանակ:
Եզրակացություն
Շնորհավորում եմ: Դուք տեղադրել եք Etherpad-ի համագործակցության խմբագրիչը Ubuntu 24.04 սերվերի վրա: Դուք Etherpad եք աշխատում MariaDB տվյալների բազայի սերվերի և Nginx վեբ սերվերի հետ: Բացի այդ, դուք ապահովել եք Etherpad-ը HTTPS-ով Certbot-ի և Letsencrypt-ի միջոցով: