Pređi na glavni sadržaj

Ručna instalacija i integracija komponenti ONLYOFFICE Workspace Community

Uvod​

Najlakši način da instalirate ONLYOFFICE Workspace Community je korišćenjem našeg Docker skripta. Ako želite potpunu kontrolu nad procesom instalacije, možete ručno instalirati sve komponente.

ONLYOFFICE Workspace Community uključuje sledeće komponente: ONLYOFFICE Community Server, ONLYOFFICE Control Panel, ONLYOFFICE Docs i ONLYOFFICE Mail. Da biste ih sve instalirali i međusobno integrisali, pratite korake ispod.

Sistemski zahtevi​

  • CPU: najmanje četvorojezgarni (šestojezgarni preporučeno)
  • RAM: najmanje 8 GB (12 GB preporučeno)
  • HDD: najmanje 40 GB slobodnog prostora
  • SWAP: najmanje 4 GB, ali zavisi od host OS-a. Više je bolje
  • OS: amd64 Linux distribucija sa kernel verzijom 3.10 ili novijom
  • Dodatni zahtevi
    • Docker: bilo koja verzija podržana od strane Docker tima

Korak 1. Instalacija preduslova​

Ako Docker nije instaliran, pogledajte sekciju za instalaciju na Docker sajtu.

note

Docker podrazumevano koristi Google DNS servere. Ako vaša ONLYOFFICE Workspace Community neće imati pristup internetu, preporučujemo da promenite podrazumevanu Docker DNS adresu na adresu vašeg lokalnog DNS servera. Da biste to uradili, idite u fajl /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:

  1. Kreirajte konfiguracioni fajl /etc/docker/daemon.json sa sledećim sadržajem:

    { "dns" : [ "8.8.8.8" ] }
  2. Ponovo pokrenite Docker servis:

    sudo systemctl restart docker.service

Pre nego što započnete instalaciju, potrebno je da kreirate sledeće foldere:

  1. Za MySQL server

    sudo mkdir -p "/app/onlyoffice/mysql/conf.d";
    sudo mkdir -p "/app/onlyoffice/mysql/data";
    sudo mkdir -p "/app/onlyoffice/mysql/initdb";
  2. Za podatke i logove ONLYOFFICE Community Server

    sudo mkdir -p "/app/onlyoffice/CommunityServer/data";
    sudo mkdir -p "/app/onlyoffice/CommunityServer/logs";
    sudo mkdir -p "/app/onlyoffice/CommunityServer/letsencrypt";
  3. Za podatke i logove ONLYOFFICE Docs

    sudo mkdir -p "/app/onlyoffice/DocumentServer/data";
    sudo mkdir -p "/app/onlyoffice/DocumentServer/logs";
  4. I za podatke i logove ONLYOFFICE Mail

    sudo mkdir -p "/app/onlyoffice/MailServer/data/certs";
    sudo mkdir -p "/app/onlyoffice/MailServer/logs";
  5. Za podatke i logove ONLYOFFICE Control Panel

    sudo mkdir -p "/app/onlyoffice/ControlPanel/data";
    sudo mkdir -p "/app/onlyoffice/ControlPanel/logs";

Zatim kreirajte mrežu onlyoffice:

sudo docker network create --driver bridge onlyoffice

Korak 2. Instalacija MySQL-a​

Nakon toga, potrebno je da kreirate Docker kontejner za MySQL server. Kreirajte konfiguracioni fajl:

echo "[mysqld]
sql_mode = 'NO_ENGINE_SUBSTITUTION'
max_connections = 1000
max_allowed_packet = 1048576000
group_concat_max_len = 2048" > /app/onlyoffice/mysql/conf.d/onlyoffice.cnf

Kreirajte SQL skript koji će generisati korisnike i dodeliti im prava. onlyoffice_user je potreban za ONLYOFFICE Community Server, a mail_admin je potreban za ONLYOFFICE Mail, ukoliko će biti instaliran:

echo "ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'my-secret-pw';
CREATE USER IF NOT EXISTS 'onlyoffice_user'@'%' IDENTIFIED WITH mysql_native_password BY 'onlyoffice_pass';
CREATE USER IF NOT EXISTS 'mail_admin'@'%' IDENTIFIED WITH mysql_native_password BY 'Isadmin123';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
GRANT ALL PRIVILEGES ON *.* TO 'onlyoffice_user'@'%';
GRANT ALL PRIVILEGES ON *.* TO 'mail_admin'@'%';
FLUSH PRIVILEGES;" > /app/onlyoffice/mysql/initdb/setup.sql

Napomena: gornji skript će postaviti dozvole za pristup SQL serveru sa bilo kojih domena (%). Ako želite da ograničite pristup, možete navesti hostove koji će imati pristup SQL serveru.

Kreirajte MySQL kontejner sa MySQL verzijom 8.0.29:

sudo docker run --net onlyoffice -i -t -d --restart=always --name onlyoffice-mysql-server \
-v /app/onlyoffice/mysql/conf.d:/etc/mysql/conf.d \
-v /app/onlyoffice/mysql/data:/var/lib/mysql \
-v /app/onlyoffice/mysql/initdb:/docker-entrypoint-initdb.d \
-e MYSQL_ROOT_PASSWORD=my-secret-pw \
-e MYSQL_DATABASE=onlyoffice \
mysql:8.0.29

Korak 3. Instalacija ONLYOFFICE Docs​

sudo docker run --net onlyoffice -i -t -d --restart=always --name onlyoffice-document-server \
-v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
-v /app/onlyoffice/DocumentServer/fonts:/usr/share/fonts/truetype/custom \
-v /app/onlyoffice/DocumentServer/forgotten:/var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten \
onlyoffice/documentserver

Za više informacija, pogledajte dokumentaciju za ONLYOFFICE Docs.

Korak 4. Instalacija ONLYOFFICE Mail​

sudo docker run --init --net onlyoffice --privileged -i -t -d --restart=always --name onlyoffice-mail-server -p 25:25 -p 143:143 -p 587:587 \
-e MYSQL_SERVER=onlyoffice-mysql-server \
-e MYSQL_SERVER_PORT=3306 \
-e MYSQL_ROOT_USER=root \
-e MYSQL_ROOT_PASSWD=my-secret-pw \
-e MYSQL_SERVER_DB_NAME=onlyoffice_mailserver \
-v /app/onlyoffice/MailServer/data:/var/vmail \
-v /app/onlyoffice/MailServer/data/certs:/etc/pki/tls/mailserver \
-v /app/onlyoffice/MailServer/logs:/var/log \
-h yourdomain.com \
onlyoffice/mailserver

Domen koji će se koristiti za održavanje prepiske mora biti validan i konfigurisan za ovaj server (tj. treba da ima odgovarajući A zapis u DNS podešavanjima koji povezuje ime vašeg domena sa IP adresom mašine na kojoj je instaliran ONLYOFFICE Mail).

U gornjoj komandi, parametar "yourdomain.com" mora se razumeti kao servisni domen za ONLYOFFICE Mail. Obično se navodi u MX zapisu domena koji će se koristiti za održavanje prepiske. Uglavnom, "yourdomain.com" izgleda kao mx1.onlyoffice.com

Dodatni parametri za mail server su dostupni ovde.

Korak 5. Instalacija ONLYOFFICE Control Panel​

Koristite ovu komandu za instalaciju ONLYOFFICE Control Panel:

sudo docker run --net onlyoffice -i -t -d --restart=always --name onlyoffice-control-panel \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /app/onlyoffice/CommunityServer/data:/app/onlyoffice/CommunityServer/data \
-v /app/onlyoffice/ControlPanel/data:/var/www/onlyoffice/Data \
-v /app/onlyoffice/ControlPanel/logs:/var/log/onlyoffice onlyoffice/controlpanel

Korak 6. Instalacija ONLYOFFICE Community Server​

Na kraju, ONLYOFFICE Community Server može biti instaliran:

sudo docker run --net onlyoffice -i -t -d --privileged --restart=always --name onlyoffice-community-server -p 80:80 -p 443:443 -p 5222:5222 --cgroupns=host \
-e MYSQL_SERVER_ROOT_PASSWORD=my-secret-pw \
-e MYSQL_SERVER_DB_NAME=onlyoffice \
-e MYSQL_SERVER_HOST=onlyoffice-mysql-server \
-e MYSQL_SERVER_USER=onlyoffice_user \
-e MYSQL_SERVER_PASS=onlyoffice_pass \
-e DOCUMENT_SERVER_PORT_80_TCP_ADDR=onlyoffice-document-server \
-e MAIL_SERVER_API_HOST=${MAIL_SERVER_IP} \
-e MAIL_SERVER_DB_HOST=onlyoffice-mysql-server \
-e MAIL_SERVER_DB_NAME=onlyoffice_mailserver \
-e MAIL_SERVER_DB_PORT=3306 \
-e MAIL_SERVER_DB_USER=root \
-e MAIL_SERVER_DB_PASS=my-secret-pw \
-e CONTROL_PANEL_PORT_80_TCP=80 \
-e CONTROL_PANEL_PORT_80_TCP_ADDR=onlyoffice-control-panel \
-v /app/onlyoffice/CommunityServer/data:/var/www/onlyoffice/Data \
-v /app/onlyoffice/CommunityServer/logs:/var/log/onlyoffice \
-v /app/onlyoffice/CommunityServer/letsencrypt:/etc/letsencrypt \
-v /sys/fs/cgroup:/sys/fs/cgroup:rw \
onlyoffice/communityserver

Gde je ${MAIL_SERVER_IP} IP adresa kontejnera ONLYOFFICE Mail, dobijena pomoću sledeće komande:

MAIL_SERVER_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' onlyoffice-mail-server)

Nakon završetka instalacije, rešenje će biti dostupno na adresi http://localhost/.