Sulit untuk meremehkan manfaat perangkat kantor online seperti Google Dokumen dan penyimpanan cloud dalam kehidupan orang-orang yang berorientasi pada teknologi. Teknologi telah menjadi begitu luas bahkan Microsoft, yang telah lama mendominasi pasar aplikasi perkantoran, baru-baru ini fokus pada pengembangan aplikasi web Office 365 dan membujuk pengguna untuk beralih ke model berlangganan untuk menggunakan layanan mereka sendiri. Kami mengundang mereka yang tertarik dengan proses instalasi dan konfigurasi penyimpanan mereka sendiri di bawah cat.
Beberapa waktu lalu kami melihat solusi penyimpanan cloud dan rangkaian web office open source yang dapat dengan mudah diterapkan untuk digunakan di perusahaan mikro. Motivasi utama untuk menjaga semua dokumentasi tetap online adalah meminimalkan dokumen dan menerapkan praktik bisnis yang baik meskipun volume transaksi rendah. Sisi sebaliknya adalah menyewa server cloud untuk menyediakan layanan ini kurang aman dibandingkan menyimpannya langsung di lokasi perusahaan, karena Anda tidak memiliki sarana apa pun untuk mengaudit akses fisik ke server atau lalu lintas Anda. Oleh karena itu, enkripsi ujung ke ujung dan perangkat lunak sumber terbuka juga diperlukan.
Dengan mempertimbangkan semua informasi yang tersedia tentang solusi sumber terbuka, kami menemukan dua proyek aktif (dengan komitmen di repositori git selama 12 bulan terakhir) yang dikembangkan untuk penyimpanan cloud: NextCloud dan OwnCloud, dan satu-satunya rangkaian kantor ONLYOFFICE yang aktif. Kedua alat penyimpanan cloud tersebut memiliki fungsi yang kurang lebih sama, dan keputusan untuk memilih NextCloud didasarkan pada adanya bukti bahwa alat tersebut dapat diintegrasikan dengan ONLYOFFICE untuk kenyamanan interaksi pengguna dengan perangkat lunak. Namun, ketika kami mulai menerapkan layanan tersebut, kurangnya informasi tentang pengintegrasian layanan di atas menjadi jelas. Kami menemukan 3 video tutorial tentang cara mengintegrasikan:
Tak satu pun dari ketiga video tersebut menjawab pertanyaan tentang menginstal layanan dokumen ONLYOFFICE di server fisik yang sama dengan NextCloud dengan nginx bersama. Sebaliknya, mereka menggunakan teknik pemisahan seperti menggunakan port terpisah untuk api layanan dokumen. Saran lainnya adalah menerapkan server terpisah untuk Layanan Dokumen, secara manual mengonfigurasi instance nginx yang ada di dalam Layanan Dokumen untuk memasang kunci akses (kunci akses yang sudah diketahui sebelumnya yang mengonfirmasi hak untuk mengakses cloud data) dan sertifikat TLS. Pendekatan di atas dianggap tidak aman dan tidak cukup efektif, jadi kami mengintegrasikan NextCloud, ONLYOFFICE, dan nginx umum yang memisahkan permintaan berdasarkan nama domain menggunakan docker-compose. Berikut adalah informasi langkah demi langkah tentang cara melakukannya.
Langkah 1: wadah nginx
Ini adalah pengaturan yang sangat sederhana, namun langkah ini memerlukan upaya paling besar untuk mengonfigurasi server proxy terbalik. Kami pertama kali membuat konfigurasi docker-compose untuk gambar nginx:stable.
Hal ini akan membuat container dengan port 80 dan 443 terbuka untuk umum, memetakan konfigurasi ke nginx/nginx-vhost.conf , dan mendefinisikan penyimpanan sertifikat yang dihasilkan sebagai sertifikat yang ditandatangani sendiri atau menggunakan certbot Let's encrypt di /nginx/certificates. Lokasi ini harus berisi folder untuk office.domainanda.com dan cloud.domainanda.com, dengan masing-masing file fullchain1.pem dan privkey1.pem untuk rantai sertifikat dan kunci pribadi server. Anda dapat membaca selengkapnya tentang cara membuat sertifikat yang ditandatangani sendiri di sini. www.akadia.com/services/ssh_test_certificate.html (mengganti nama .key dan .crt menjadi .pem berfungsi tanpa mengubah struktur file untuk nginx).
Setelah itu, kami mendefinisikan file vhost. Kami pertama-tama mendefinisikan perilaku port 80 sebagai pengalihan sederhana ke https, karena kami tidak ingin mengizinkan lalu lintas http apa pun
Namun jangan lupa untuk menautkan container nginx ke layanan dokumen:
services:
...
nginx:
...
depends_on:
- onlyoffice
Langkah 3: BerikutnyaCloud
Pertama, tambahkan layanan baru:
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
dan tambahkan tautan ke nginx:
services:
...
nginx:
...
depends_on:
- app
Sekarang saatnya memuat kontainer.
docker-compose up -d
Setelah beberapa saat, nginx akan mulai mengarahkan Anda ke front end NextCloud, yang merupakan halaman konfigurasi default. Anda harus memasukkan nama pengguna dan kata sandi untuk pengguna admin pertama Anda dan kredensial basis data yang Anda berikan di docker-compose.yml Setelah pengaturan selesai, Anda akan bisa masuk. Dalam kasus kami, penantiannya memakan waktu hampir satu menit dan memerlukan penyegaran tambahan pada halaman login sebelum kami dapat login ke layanan cloud.
Jendela pengaturan layanan NextCloud
Langkah 4: Menghubungkan NextCloud dan ONLYOFFICE
Pada langkah ini, Anda perlu menginstal aplikasi untuk NextCloud, yang menghubungkan fungsionalitas ONLYOFFICE. Mari kita mulai dengan panel kontrol aplikasi di pojok kanan atas menu. Temukan aplikasi ONLYOFFICE (di bawah Office & teks atau menggunakan pencarian), instal dan aktifkan.
Setelah itu buka Pengaturan melalui menu di pojok kanan atas dan Anda akan menemukan item ONLYOFFICE di menu sebelah kiri. Pergilah ke dalamnya. Anda harus mendaftarkan alamat seperti yang ditunjukkan di bawah ini.
Pengaturan aplikasi integrasi
Alamat pertama digunakan untuk menghubungkan ke beberapa file js dan css langsung dari aplikasi yang berjalan di browser (inilah yang kita perlukan untuk membuka akses ke layanan ONLYOFFICE melalui nginx). Kunci rahasia tidak digunakan karena kami lebih mempercayai lapisan isolasi Docker daripada kunci otentikasi persisten. Alamat ketiga digunakan oleh kontainer NextCloud untuk terhubung langsung ke ONLYOFFICE API, dan menggunakan nama host internal default dari Docker. Nah, kolom terakhir digunakan agar ONLYOFFICE dapat membuat permintaan kembali ke NextCloud API menggunakan alamat IP eksternal atau alamat Docker internal jika Anda menggunakan jaringan Docker, tetapi ini tidak digunakan dalam kasus kami. Pastikan pengaturan firewall Anda mengizinkan interaksi semacam ini.
Setelah menyimpan, NextCloud akan menguji koneksi dan, jika semuanya benar, akan menunjukkan kepada Anda pengaturan terkait integrasi - misalnya, jenis file apa yang dapat diedit dengan integrasi ini. Sesuaikan sesuai keinginan Anda.
Langkah terakhir: di mana menemukan editor
Jika Anda kembali ke folder penyimpanan cloud dan mengklik “+” untuk membuat file baru, maka Anda akan memiliki opsi baru untuk membuat dokumen, spreadsheet, atau presentasi. Dengan bantuan mereka, Anda akan membuat dan segera dapat mengedit jenis file ini menggunakan ONLYOFFICE.