Тешко е да се потцени вредноста на онлајн канцелариските пакети како Google Docs и складирањето облак во животот на луѓето ориентирани кон технологијата. Технологијата стана толку широко распространета што дури и Мајкрософт, кој долго време доминираше на пазарот на канцелариски апликации, неодамна се фокусираше на развивање на веб апликацијата Office 365 и убедување на корисниците да се префрлат на модел на претплата за користење на сопствените услуги. Ги покануваме оние кои се заинтересирани за процесот на инсталирање и конфигурирање на сопственото складирање под мачка.
Пред извесно време разгледавме решенија за складирање облак и веб-канцелариски пакети со отворен код кои лесно може да се применат за употреба во микро-претпријатие. Главната мотивација за одржување на целата документација на интернет е да се сведе документацијата на минимум и да се имплементираат добри деловни практики и покрај малиот обем на трансакции. Другата страна на медалот е дека изнајмувањето облак сервер за да се обезбеди оваа услуга е помалку безбедно отколку неговото складирање директно во просториите на претпријатието, бидејќи немате никакви средства за ревизија на физичкиот пристап до вашиот сервер или сообраќај. Затоа, потребно е и шифрирање од крај до крај и софтвер со отворен код.
Земајќи ги предвид сите достапни информации за решенијата со отворен код, најдовме два активни проекти (со заложби во складиштето на git во изминатите 12 месеци) развиени за складирање во облак: NextCloud и OwnCloud и единствениот активен канцелариски пакет ONLYOFFICE. Двете алатки за складирање облак имаат приближно иста функционалност, а одлуката да се избере NextCloud беше заснована на постоење на докази дека може да се интегрира со ONLYOFFICE за удобна корисничка интеракција со софтверот. Меѓутоа, кога почнавме да ги распоредуваме услугите, недостигот на информации за интегрирање на горенаведените услуги стана очигледен. Најдовме 3 туторијални видеа за тоа како да се интегрираме:
Ниту едно од трите видеа не одговори на прашањето за инсталирање на услугата за документи ONLYOFFICE на истиот физички сервер како NextCloud со споделен nginx. Наместо тоа, тие користеа техники за раздвојување како што е користење на посебни порти за api услугата за документи. Друг предлог беше да се распореди посебен сервер за Document Service, рачно конфигурирање на примерокот nginx вграден во Document Service за да се инсталира клуч за пристап (препознатлив клуч за пристап кој го потврдува правото за пристап до облакот за податоци) и TLS сертификати. Горенаведените пристапи се сметаа за небезбедни и недоволно ефикасни, па ги интегриравме NextCloud, ONLYOFFICE и заеднички nginx што ги одвојува барањата по имиња на домени користејќи docker-compose. Еве чекор по чекор информации за тоа како да го направите тоа.
Чекор 1: контејнер nginx
Ова е многу едноставно поставување, но овој чекор бара најмногу работа за да го конфигурирате обратниот прокси-сервер. Прво ја создадовме конфигурацијата docker-compose за сликата nginx:stable.
Ова создава контејнер со портите 80 и 443 отворени за јавноста, ја мапира конфигурацијата на nginx/nginx-vhost.conf и дефинира складиште за сертификати генерирани како самопотпишани сертификати или со користење на Ајде да го шифрираме certbot во /nginx/сертификати. Оваа локација треба да содржи папки за office.yourdomain.com и cloud.yourdomain.com, со fullchain1.pem и privkey1.pem датотеки во секоја за синџирот на сертификати и приватниот клуч на серверот, соодветно. Можете да прочитате повеќе за тоа како да генерирате самопотпишан сертификат овде. www.akadia.com/services/ssh_test_certificate.html (преименувањето на .key и .crt во .pem работи без конвертирање на структурата на датотеката за nginx).
После тоа, ја дефиниравме датотеката vhost. Прво го дефинираме однесувањето на портата 80 како едноставно пренасочување кон https, бидејќи не сакаме да дозволиме сообраќај на http
Но, не заборавајте да го поврзете контејнерот nginx со услугата за документи:
services:
...
nginx:
...
depends_on:
- onlyoffice
Чекор 3: NextCloud
Прво, додадете нови услуги:
services:
...
db:
image: mariadb
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
restart: always
volumes:
- /data/nextcloud_db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=#put some password here
- MYSQL_PASSWORD=#put some other password here
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
app:
image: nextcloud
depends_on:
- db
- onlyoffice
restart: always
и додајте врска до nginx:
services:
...
nginx:
...
depends_on:
- app
Сега е време да се вчитаат контејнерите.
docker-compose up -d
По некое време, nginx ќе почне да ве пренасочува кон предниот дел на NextCloud, што е стандардната страница за конфигурација. Ќе треба да ги внесете корисничкото име и лозинката за вашиот прв администратор и ингеренциите за базата на податоци што ги наведовте во docker-compose.yml Откако ќе заврши поставувањето, ќе можете да се најавите. Во нашиот случај, чекањето траеше речиси една минута и бараше дополнително освежување на страницата за најавување пред да можеме да се најавиме на услугата облак.
Следен прозорец за поставки за услугата Cloud
Чекор 4: Поврзување NextCloud и ONLYOFFICE
На овој чекор, ќе треба да ја инсталирате апликацијата за NextCloud, која ја поврзува функционалноста ONLYOFFICE. Да почнеме со контролната табла на апликацијата во горниот десен агол на менито. Најдете ја апликацијата ONLYOFFICE (под Office и текст или користејќи пребарување), инсталирајте ја и активирајте ја.
После тоа, одете во Поставки преку менито во горниот десен агол и треба да ја пронајдете ставката ONLYOFFICE во левото мени. Влезете во него. Ќе треба да ги регистрирате адресите како што е наведено подолу.
Поставки за апликација за интеграција
Првата адреса се користи за поврзување со некои js и css датотеки директно од апликацијата што работи во прелистувачот (ова е она што ни треба за да отвориме пристап до услугата ONLYOFFICE преку nginx). Тајниот клуч не се користи затоа што повеќе му веруваме на слојот за изолација на Docker отколку на постојаниот клуч за автентикација. Третата адреса се користи од контејнерот NextCloud за директно поврзување со ONLYOFFICE API и го користи стандардното внатрешно име на домаќин од Docker. Па, последното поле се користи за ONLYOFFICE да може да испраќа барања назад до NextCloud API користејќи надворешна IP адреса или внатрешна Docker адреса ако користите Docker мрежи, но ова не се користи во нашиот случај. Проверете дали поставките на вашиот заштитен ѕид дозволуваат вакви интеракции.
По зачувувањето, NextCloud ќе ја тестира врската и, ако сè е точно, ќе ви ги покаже поставките поврзани со интеграцијата - на пример, какви типови датотеки може да се уредуваат со оваа интеграција. Прилагодете како што ви одговара.
Последниот чекор: каде да го најдете уредникот
Ако се вратите во папките за складирање облак и кликнете на „+“ за да креирате нова датотека, тогаш ќе имате нова опција за креирање документ, табела или презентација. Со нивна помош, ќе креирате и веднаш ќе можете да ги уредувате овие типови датотеки користејќи ONLYOFFICE.