Nehéz alábecsülni az olyan online irodai csomagok értékét, mint a Google Dokumentumok és a felhőalapú tárolás a technológia-orientált emberek életében. A technológia annyira elterjedt, hogy még az irodai alkalmazások piacát sokáig uraló Microsoft is az Office 365 webalkalmazás fejlesztésére és a felhasználók rábeszélésére helyezte a hangsúlyt, hogy saját szolgáltatásaik használatához váltsanak előfizetéses modellre. Várjuk azokat, akik érdeklődnek a saját tároló telepítésének, konfigurálásának folyamata iránt a kat.
Nemrég megvizsgáltuk a felhőalapú tárolási megoldásokat és a nyílt forráskódú webes irodai csomagokat, amelyek könnyen telepíthetők mikrovállalati használatra. Az összes dokumentáció online tartásának fő motivációja a papírmunka minimálisra csökkentése és a jó üzleti gyakorlatok alkalmazása a tranzakciók alacsony mennyisége ellenére. Az érem másik oldala, hogy egy felhőszerver bérlése ennek a szolgáltatásnak a biztosításához kevésbé biztonságos, mintha azt közvetlenül a vállalat telephelyén tárolná, mivel semmilyen eszköze nincs a szerverhez vagy a forgalomhoz való fizikai hozzáférés ellenőrzésére. Ezért végpontok közötti titkosításra és nyílt forráskódú szoftverekre is szükség van.
Figyelembe véve a nyílt forráskódú megoldásokról rendelkezésre álló összes információt, két aktív projektet találtunk (az elmúlt 12 hónapban a git repository-ban lévő véglegesítésekkel), amelyeket felhőalapú tárolásra fejlesztettek ki: a NextCloudot és az OwnCloudot, valamint az egyetlen aktív ONLYOFFICE irodai csomagot. A két felhőalapú tárolási eszköz funkcionalitása megközelítőleg azonos, és a NextCloud melletti döntés azon alapult, hogy bizonyítékok léteztek arra vonatkozóan, hogy az integrálható az ONLYOFFICE-szal a kényelmes felhasználói interakció érdekében a szoftverrel. A szolgáltatások kiépítésének megkezdésekor azonban nyilvánvalóvá vált a fenti szolgáltatások integrálásával kapcsolatos információhiány. Találtunk 3 oktatóvideót az integrációról:
A három videó egyike sem válaszolt arra a kérdésre, hogy az ONLYOFFICE dokumentumszolgáltatást ugyanarra a fizikai szerverre kell telepíteni, mint a NextCloud megosztott nginx-szel. Ehelyett elválasztási technikákat alkalmaztak, például külön portokat használtak a dokumentumszolgáltatási API-hoz. Egy másik javaslat az volt, hogy telepítsenek egy külön szervert a Document Service számára, manuálisan konfigurálva a Document Service-be beépített nginx példányt egy hozzáférési kulcs (egy előre ismert hozzáférési kulcs, amely megerősíti az adatfelhő elérésének jogát) és a TLS-tanúsítványok telepítéséhez. A fenti megközelítéseket nem tartották biztonságosnak és nem elég hatékonynak, ezért integráltuk a NextCloudot, az ONLYOFFICE-ot és egy közös nginxet, amely a docker-compose segítségével domainnevek szerint választja el a kéréseket. Íme lépésről lépésre, hogyan kell ezt megtenni.
1. lépés: nginx tartály
Ez egy nagyon egyszerű beállítás, de ez a lépés igényli a legtöbb munkát a fordított proxyszerver konfigurálásához. Először létrehoztuk a docker-compose konfigurációt az nginx:stable képhez.
Ez létrehoz egy tárolót a 80-as és 443-as portokkal, amelyek nyilvánosak nyitva állnak, a konfigurációt leképezi az nginx/nginx-vhost.conf fájlra, és meghatároz egy tárolót az önaláírt tanúsítványokként vagy a Let's encrypt certbotjával az /nginx/certificates mappában. Ennek a helynek tartalmaznia kell az office.yourdomain.com és a cloud.yourdomain.com mappákat, amelyek mindegyikében a tanúsítványlánchoz és a szerver privát kulcsához tartozó fullchain1.pem és privkey1.pem fájlokat kell tartalmaznia. Az önaláírt tanúsítvány létrehozásáról itt olvashat bővebben. www.akadia.com/services/ssh_test_certificate.html (A .key és .crt átnevezése .pem-re működik az nginx fájlszerkezetének konvertálása nélkül).
Ezt követően definiáltuk a vhost fájlt. Először a 80-as port viselkedését a https-re való egyszerű átirányításként határozzuk meg, mert nem akarunk engedélyezni semmilyen http forgalmat
De ne felejtse el összekapcsolni az nginx tárolót a dokumentumszolgáltatással:
services:
...
nginx:
...
depends_on:
- onlyoffice
3. lépés: NextCloud
Először adjon hozzá új szolgáltatásokat:
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
és adj hozzá egy linket az nginx-hez:
services:
...
nginx:
...
depends_on:
- app
Itt az ideje a konténerek betöltésének.
docker-compose up -d
Egy idő után az nginx elkezdi átirányítani Önt a NextCloud kezelőfelületére, amely az alapértelmezett konfigurációs oldal. Meg kell adnia az első adminisztrátor felhasználónevét és jelszavát, valamint a docker-compose.yml fájlban megadott adatbázis hitelesítő adatait. A beállítás befejezése után be tud majd jelentkezni. Esetünkben a várakozás csaknem egy percig tartott, és a bejelentkezési oldal további frissítését igényelte, mielőtt bejelentkezhettünk volna a felhőszolgáltatásba.
NextCloud szolgáltatás beállításai ablak
4. lépés: A NextCloud és az ONLYOFFICE összekapcsolása
Ebben a lépésben telepítenie kell a NextCloud alkalmazást, amely összeköti az ONLYOFFICE funkciót. Kezdjük a menü jobb felső sarkában található alkalmazásvezérlőpulttal. Keresse meg az ONLYOFFICE alkalmazást (az Office és szöveg alatt vagy a keresés segítségével), telepítse és aktiválja.
Ezután lépjen a Beállítások menübe a jobb felső sarokban található menüből, és a bal oldali menüben találja meg az ONLYOFFICE elemet. Menj bele. Regisztrálnia kell a címeket az alábbiak szerint.
Integrációs alkalmazás beállításai
Az első címet arra használjuk, hogy néhány js és css fájlt közvetlenül a böngészőben futó alkalmazásból hozzunk létre (erre van szükségünk az ONLYOFFICE szolgáltatás eléréséhez az nginx-en keresztül). A titkos kulcsot nem használjuk, mert jobban megbízunk a Docker elkülönítési rétegben, mint az állandó hitelesítési kulcsban. A harmadik címet a NextCloud tároló használja az ONLYOFFICE API-hoz való közvetlen csatlakozáshoz, és a Docker alapértelmezett belső gazdagépnevét használja. Nos, az utolsó mezőt arra használjuk, hogy az ONLYOFFICE visszakéréseket küldhessen a NextCloud API-nak külső IP-cím vagy belső Docker-cím használatával, ha Docker-hálózatokat használ, de ez a mi esetünkben nem használatos. Győződjön meg arról, hogy a tűzfal beállításai lehetővé teszik az ilyen jellegű interakciókat.
Mentés után a NextCloud teszteli a kapcsolatot, és ha minden rendben van, megmutatja az integrációval kapcsolatos beállításokat – például, hogy milyen típusú fájlokat szerkeszthet ez az integráció. Testreszabhatja, ahogy jónak látja.
Az utolsó lépés: hol található a szerkesztő
Ha visszatér a felhőalapú tárolási mappákhoz, és a „+” gombra kattint új fájl létrehozásához, akkor új lehetőség nyílik dokumentum, táblázat vagy prezentáció létrehozására. Segítségükkel létrehozhatja és azonnal szerkesztheti az ilyen típusú fájlokat az ONLYOFFICE segítségével.