- Početna
- Dokumenti
- Instalacija i konfiguracija
- Programer
- Verzija Dockera
- Instalacija ONLYOFFICE Docs Docker verzije za arm64
Instalacija ONLYOFFICE Docs Docker verzije za arm64
Uvod
Počevši od verzije 7.1, ONLYOFFICE Docs može biti instaliran koristeći Docker za 64-bitnu ARM arhitekturu.
Developer Edition vam omogućava da instalirate ONLYOFFICE Docs na vaš lokalni server i integrišete online editore sa vašom web aplikacijom.
ONLYOFFICE Docs je online kancelarijski paket koji uključuje preglednike i editore za tekstove, tabele i prezentacije, potpuno kompatibilan sa Office Open XML formatima: .docx, .xlsx, .pptx i omogućava kolaborativno uređivanje u realnom vremenu.
Funkcionalnosti
- Editor dokumenata
- Editor tabela
- Editor prezentacija
- Preglednici za mobilni web
- Editori za mobilni web
- Kolaborativno uređivanje
- Podrška za hijeroglife
- Podrška za sve popularne formate: DOC, DOCX, TXT, ODT, RTF, ODP, EPUB, ODS, XLS, XLSX, CSV, PPTX, HTML
Pogledajte detaljnu listu funkcionalnosti dostupnih za ONLYOFFICE Docs Developer Edition.
Ovaj vodič će vam pokazati kako da instalirate ONLYOFFICE Docs Developer Edition Docker verziju 7.2 i kasnije za 64-bitnu ARM arhitekturu.
Sistemski zahtevi
-
CPU64-bitni ARM procesori
-
RAM4 GB ili više
-
HDDnajmanje 40 GB slobodnog prostora
-
SWAPnajmanje 4 GB, ali zavisi od operativnog sistema domaćina. Više je bolje
-
OSLinux distribucija za arm64
-
Dodatni zahtevi
- Docker: bilo koja verzija podržana od strane Docker tima
Instalacija ONLYOFFICE Docs
/etc/default/docker i promenite IP adresu u sledećem redu na IP adresu DNS servera u vašoj lokalnoj mreži:
docker_OPTS="--dns 8.8.8.8"
Za operativne sisteme bazirane na RPM-u kao što je CentOS:
-
Kreirajte konfiguracionu datoteku
/etc/docker/daemon.jsonsa sledećim sadržajem:{ "dns" : [ "8.8.8.8" ] } -
Restartujte Docker servis:
sudo systemctl restart docker.service
Nakon što ste instalirali Docker, pokrenite ga i izvršite sledeću komandu:
sudo docker run -i -t -d -p 80:80 --restart=always -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest
-e JWT_SECRET=my_jwt_secret.
Ako ne planirate koristiti JWT u vašoj instalaciji, koristite -e JWT_ENABLED=false.
sudo docker run -i -t -d -p <PORT_NUMBER>:80 --restart=always -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest
Gde je <PORT_NUMBER> broj porta koji želite da ONLYOFFICE Docs koristi.
Ovo će instalirati ONLYOFFICE Docs i sve zavisnosti koje su mu potrebne (lista onoga što se radi skriptom može se pronaći ovde).
Skladištenje podataka van kontejnera
Svi podaci su skladišteni u posebno određenim direktorijumima, data volumes, na sledećoj lokaciji:
/var/log/onlyofficeza logove ONLYOFFICE Docs/var/www/onlyoffice/Dataza sertifikate/var/lib/onlyofficeza keš fajlova/var/lib/postgresqlza bazu podataka
Da biste pristupili vašim podacima koji se nalaze van kontejnera, potrebno je da montirate volumene. To se može uraditi specificiranjem opcije -v u komandi docker run.
sudo docker run -i -t -d -p 80:80 --restart=always \
-v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
-v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \
-v /
app/onlyoffice/DocumentServer/db:/var/lib/postgresql -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest
Obično nije potrebno čuvati podatke kontejnera jer rad kontejnera ne zavisi od njegovog stanja. Čuvanje podataka će biti korisno:
- za lak pristup podacima kontejnera, kao što su logovi;
- za uklanjanje ograničenja veličine podataka unutar kontejnera;
- kada koristite servise pokrenute van kontejnera kao što su PostgreSQL, Redis, RabbitMQ.
Pokretanje ONLYOFFICE Docs koristeći HTTPS
sudo docker run -i -t -d -p 443:443 --restart=always \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest
Pristup aplikaciji onlyoffice može biti osiguran korišćenjem SSL-a kako bi se sprečio neovlašćeni pristup. Dok CA sertifikovani SSL sertifikat omogućava verifikaciju poverenja putem CA, samopotpisani sertifikati takođe mogu pružiti jednak nivo verifikacije poverenja sve dok svaki klijent preduzme dodatne korake da verifikuje identitet vašeg sajta. Uputstva za postizanje ovoga su navedena ispod.
Da biste osigurali aplikaciju putem SSL-a, u osnovi su potrebne dve stvari:
- Privatni ključ (.key)
- SSL sertifikat (.crt)
Potrebno je da kreirate i instalirate sledeće fajlove:
/app/onlyoffice/DocumentServer/data/certs/onlyoffice.key
/app/onlyoffice/DocumentServer/data/certs/onlyoffice.crt
Kada koristite CA sertifikovane sertifikate (npr. Let's Encrypt), ove fajlove vam obezbeđuje CA. Ako koristite samopotpisane sertifikate, potrebno je da generišete ove fajlove sami.
Prebacivanje ONLYOFFICE Docs na HTTPS koristeći certbot
Najlakši način da prebacite ONLYOFFICE Docs na HTTPS je da automatski dobijete Let's Encrypt SSL sertifikate koristeći certbot.
Pokrenite ONLYOFFICE Docs Docker kontejner, navodeći portove 80 i 443 i postavljajući svoje vrednosti za promenljive:
sudo docker run -i -t -d -p 80:80 -p 443:443 --restart=always \
-e LETS_ENCRYPT_DOMAIN=yourdomain.com -e LETS_ENCRYPT_MAIL=email@example.com -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest
Gde:
- LETS_ENCRYPT_DOMAIN - naziv domena koji će se koristiti za sertifikat.
- LETS_ENCRYPT_MAIL - email koji se koristi za registraciju i kontakt za oporavak.
CA-signed sertifikat od letsencrypt.org će biti automatski generisan i instaliran na vaš server. Sada bi vaš ONLYOFFICE Docs trebao biti dostupan na adresi https://yourdomain.com.
Generisanje samopotpisanih sertifikata
Generisanje samopotpisanih SSL sertifikata uključuje jednostavnu proceduru u 3 koraka
KORAK 1: Kreirajte privatni ključ servera
openssl genrsa -out onlyoffice.key 2048
KORAK 2: Kreirajte zahtev za potpisivanje sertifikata (CSR)
openssl req -new -key onlyoffice.key -out onlyoffice.csr
KORAK 3: Potpišite sertifikat koristeći privatni ključ i CSR
openssl x509 -req -days 365 -in onlyoffice.csr -signkey onlyoffice.key -out onlyoffice.crt
Sada ste generisali SSL sertifikat koji važi 365 dana.
Jačanje sigurnosti servera
Ovaj deo vam pruža uputstva kako da ojačate sigurnost vašeg servera.
Da biste to postigli, potrebno je da generišete jače DHE parametre.
openssl dhparam -out dhparam.pem 2048
Instalacija SSL sertifikata
Od četiri generisana fajla, potrebno je da instalirate onlyoffice.key, onlyoffice.crt i dhparam.pem fajlove na onlyoffice server. CSR fajl nije potreban, ali se pobrinite da ga bezbedno sačuvate (u slučaju da vam ikada ponovo zatreba).
Podrazumevana putanja na kojoj je onlyoffice aplikacija konfigurisana da traži SSL sertifikate je /var/www/onlyoffice/Data/certs, međutim, ovo se može promeniti koristeći opcije konfiguracije SSL_KEY_PATH, SSL_CERTIFICATE_PATH i SSL_DHPARAM_PATH.
Putanja /var/www/onlyoffice/Data/ je putanja za čuvanje podataka, što znači da morate kreirati folder nazvan certs unutar /app/onlyoffice/DocumentServer/data/ i kopirati fajlove u njega, a kao meru sigurnosti ažuriraćete dozvolu na fajlu onlyoffice.key da bude čitljiv samo od strane vlasnika.
mkdir -p /app/onlyoffice/DocumentServer/data/certs
cp onlyoffice.key /app/onlyoffice/DocumentServer/data/certs/
cp onlyoffice.crt /app/onlyoffice/DocumentServer/data/certs/
cp dhparam.pem /app/onlyoffice/DocumentServer/data/certs/
chmod 400 /app/onlyoffice/DocumentServer/data/certs/onlyoffice.key
I ponovo pokrenite Docker kontejner:
sudo docker restart {{DOCUMENT_SERVER_ID}}
Sada ste samo jedan korak udaljeni od osiguravanja naše aplikacije.
Dostupni parametri konfiguracije
--env-file, gde možete navesti sve potrebne promenljive okruženja u jednoj datoteci. Ovo će vas spasiti od pisanja potencijalno duge komande docker run.U nastavku je kompletna lista parametara koji se mogu postaviti pomoću promenljivih okruženja.
- ONLYOFFICE_HTTPS_HSTS_ENABLED: Napredna opcija konfiguracije za isključivanje HSTS konfiguracije. Primjenjivo samo kada se koristi SSL. Podrazumevano je
true. - ONLYOFFICE_HTTPS_HSTS_MAXAGE: Napredna opcija konfiguracije za postavljanje maksimalnog trajanja HSTS u onlyoffice NGINX vHost konfiguraciji. Primjenjivo samo kada se koristi SSL. Podrazumevano je
31536000. - SSL_CERTIFICATE_PATH: Putanja do SSL sertifikata koji će se koristiti. Podrazumevano je
/var/www/onlyoffice/Data/certs/tls.crt. - SSL_KEY_PATH: Putanja do privatnog ključa SSL sertifikata. Podrazumevano je
/var/www/onlyoffice/Data/certs/tls.key. - SSL_DHPARAM_PATH: Putanja do Diffie-Hellman parametra. Podrazumevano je
/var/www/onlyoffice/Data/certs/dhparam.pem. - SSL_VERIFY_CLIENT: Omogućava verifikaciju klijentskih sertifikata koristeći
CA_CERTIFICATES_PATH file. Podrazumevano jefalse. - DB_TYPE: Tip baze podataka. Podržane vrednosti su
postgres,mariadbilimysql. Podrazumevano jepostgres. - DB_HOST: IP adresa ili ime hosta gde se pokreće server baze podataka.
- DB_PORT: Broj porta servera baze podataka.
- DB_NAME: Ime baze podataka koja će biti kreirana pri pokretanju slike.
- DB_USER: Novi korisnički naziv sa superuser dozvolama za nalog baze podataka.
- DB_PWD: Lozinka postavljena za nalog baze podataka.
- AMQP_URI: AMQP URI za povezivanje sa serverom posrednika poruka.
- AMQP_TYPE: Tip posrednika poruka. Podržane vrednosti su
rabbitmqiliactivemq. Podrazumevano jerabbitmq. - REDIS_SERVER_HOST: IP adresa ili ime hosta gde se pokreće Redis server.
- REDIS_SERVER_PORT: Broj porta Redis servera.
- REDIS_SERVER_PASS: Lozinka za Redis server. Lozinka nije postavljena po podrazumevanju.
- NGINX_WORKER_PROCESSES: Definiše broj NGINX radnih procesa.
- NGINX_WORKER_CONNECTIONS: Postavlja maksimalan broj istovremenih veza koje NGINX radni proces može otvoriti.
- SECURE_LINK_SECRET: Definiše tajnu za nginx konfiguracionu direktivu secure_link_md5. Podrazumevano je
random string. - JWT_ENABLED: Specifikuje omogućavanje validacije JSON web tokena od strane ONLYOFFICE Docs. Podrazumevano je
true. - JWT_SECRET: Definiše tajni ključ za validaciju JSON web tokena u zahtevu ka ONLYOFFICE Docs. Podrazumevano je slučajna vrednost.
- JWT_HEADER: Definiše HTTP zaglavlje koje će se koristiti za slanje JSON web tokena. Podrazumevano je
Authorization. - JWT_IN_BODY: Specifikuje omogućavanje validacije tokena u telu zahteva ka ONLYOFFICE Docs. Podrazumevano je
false. - ALLOW_META_IP_ADDRESS: Definiše da li je dozvoljeno povezivanje sa meta IP adresom ili ne. Podrazumevano je
false. - ALLOW_PRIVATE_IP_ADDRESS: Definiše da li je dozvoljeno povezivanje sa privatnom IP adresom ili ne. Podrazumevano je
false. - WOPI_ENABLED: Specifikuje omogućavanje wopi handlera. Podrazumevano je
false. - USE_UNAUTHORIZED_STORAGE: Postavite na
trueako koristite samopotpisane sertifikate za vaš server za skladištenje, npr. Nextcloud. Podrazumevano jefalse. - GENERATE_FONTS: Kada je
true, regeneriše listu fontova i sličice fontova itd. pri svakom pokretanju. Podrazumevano jetrue. - METRICS_ENABLED: Specifikuje omogućavanje StatsD za ONLYOFFICE Docs. Podrazumevano je
false. - METRICS_HOST: Definiše StatsD host za slušanje. Podrazumevano je
localhost. - METRICS_PORT: Definiše StatsD port za slušanje. Podrazumevano je
8125. - METRICS_PREFIX: Definiše StatsD prefiks za metrike za backend servise. Podrazumevano je
ds.. - LETS_ENCRYPT_DOMAIN: Definiše domen za Let's Encrypt sertifikat.
- LETS_ENCRYPT_MAIL: Definiše email adresu administratora domena za Let's Encrypt sertifikat.
Registracija vaše Developer Edition verzije
Ako ste kupili Developer Edition i dobili datoteku license.lic, možete je postaviti u vašu instalaciju kako biste dobili punu verziju softvera.
Kada koristite docker kontejner, datoteka license.lic može biti postavljena u bilo koji folder (npr. /app/onlyoffice/DocumentServer/data/license.lic), ali ćete morati montirati ovaj folder kada kontejner počne:
sudo docker run -i -t -d -p 80:80 --restart=always \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
-e JWT_SECRET=my_jwt_secret onlyoffice/documentserver-de:latest
Nakon toga, vaša verzija Developer Edition će postati registrovana i sa svim funkcionalnostima.