Cara Menginstal ONLYOFFICE Docs di Ubuntu 24.04
ONLYOFFICE Docs adalah suite perkantoran daring kolaboratif yang gratis digunakan namun kuat, dilengkapi dengan penampil dan editor dokumen untuk teks, presentasi, spreadsheet, formulir, dan PDF. Suite ONLYOFFICE sepenuhnya kompatibel dengan format Office Open XML: .docx, .xlsx, .pptx dan mendukung pengeditan dokumen secara kolaboratif dalam waktu nyata. Dalam artikel ini kami akan menunjukkan cara menginstal dan mengonfigurasi ONLYOFFICE Docs di Ubuntu 24.04 (Noble Numbat).
Buku Panduan Utama Desktop Ubuntu
Kuasai Ubuntu seperti seorang ahli - mulai dari kustomisasi desktop yang indah hingga otomatisasi terminal yang kuat. Sempurna untuk pengembang, admin sistem, dan pengguna mahir yang menginginkan kendali penuh atas ruang kerja mereka.
ONLYOFFICE Docs dikemas dengan komponen-komponen berikut:
- server – Ini adalah lapisan server backend yang mengontrol semua komponen dari ONLYOFFICE Docs.
- inti – Memungkinkan komunikasi antara format dokumen kantor (DOC, DOCX, ODT, RTF, TXT, PDF, HTML, EPUB, XPS, DjVu, XLS, XLSX, ODS, CSV, PPT, PPTX, ODP).
- sdkjs – SDK API JavaScript untuk semua komponen yang termasuk interaksi sisi klien.
- web-apps – Ini adalah frontend untuk ONLYOFFICE Docs
- kamus – Berisi kamus dari berbagai bahasa yang digunakan untuk pemeriksaan ejaan di ONLYOFFICE Docs.
Berikut adalah daftar editor yang disertakan dengan ONLYOFFICE Docs:
- Editor Dokumen ONLYOFFICE
- Editor Spreadsheet ONLYOFFICE
- Editor Presentasi ONLYOFFICE
- Pembuat Formulir ONLYOFFICE
- ONLYOFFICE editor, pembaca & pengonversi PDF
Atur persyaratan
Dalam artikel ini kami akan menginstal Community Edition dari ONLYOFFICE Docs di server Ubuntu lokal. Persyaratan perangkat keras minimum untuk server adalah sebagai berikut:
- CPU: Minimal dual core
2 GHz - RAM: Setidaknya
2 GB - Ruang disk: Setidaknya
40 GBruang kosong - SWAP: Setidaknya
4 GB, atau lebih banyak RAM jika tidak ada swap. - OS: Sistem Linux Ubuntu atau Debian 64-bit
Jika Anda memenuhi persyaratan, ini saat yang tepat untuk mengalihkan perhatian ke penyiapan server Dokumen Anda.
Langkah 1: Siapkan database PostgreSQL
Mulailah pengaturan dengan memastikan sistem Anda sudah diperbarui:
sudo apt update && sudo apt upgrade -yKita dapat menginstal server PostgreSQL versi yang tersedia di repositori default OS kita.
sudo apt install postgresqlSetelah paket terpasang, layanan akan dimulai secara otomatis, langkah berikutnya adalah membuat database dan pengguna PostgreSQL:
sudo -i -u postgres psql -c "CREATE USER onlyoffice WITH PASSWORD 'onlyoffice';"
sudo -i -u postgres psql -c "CREATE DATABASE onlyoffice OWNER onlyoffice;"Langkah 2: Instal Server RabbitMQ
ONLYOFFICE menggunakan RabbitMQ sebagai perantara pesan untuk memungkinkan komunikasi antar layanan yang berbeda di dalam suite ONLYOFFICE. Instal paketnya dengan menjalankan perintah berikut:
sudo apt install rabbitmq-serverAnda dapat memeriksa status layanan:
$ systemctl status rabbitmq-server.service
● rabbitmq-server.service - RabbitMQ Messaging Server
Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; enabled; preset: enabled)
Active: active (running) since Tue 2024-07-30 08:20:24 UTC; 6s ago
Main PID: 15046 (beam.smp)
Tasks: 24 (limit: 4658)
Memory: 102.8M (peak: 107.9M)
CPU: 3.770s
CGroup: /system.slice/rabbitmq-server.service
├─15046 /usr/lib/erlang/erts-13.2.2.5/bin/beam.smp -W w -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -pc unicode -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -sbwt none -sbwtdcpu none -sb>
├─15056 erl_child_setup 65536
├─15108 /usr/lib/erlang/erts-13.2.2.5/bin/inet_gethost 4
├─15109 /usr/lib/erlang/erts-13.2.2.5/bin/inet_gethost 4
└─15112 /bin/sh -s rabbit_disk_monitor
Jul 30 08:20:20 ubuntu-cloudspinx-com systemd[1]: Starting rabbitmq-server.service - RabbitMQ Messaging Server...
Jul 30 08:20:24 ubuntu-cloudspinx-com systemd[1]: Started rabbitmq-server.service - RabbitMQ Messaging Server.Langkah 3: Instal ONLYOFFICE Docs
Sekarang setelah kita mengkonfigurasi lingkungan, kita siap untuk menginstal ONLYOFFICE Docs ke dalam sistem Ubuntu kita. Namun, kita harus mengimpor kunci GPG yang digunakan untuk menandatangani paket sebagai langkah pertama.
curl -fsSL https://download.onlyoffice.com/GPG-KEY-ONLYOFFICE|sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/onlyoffice.gpgSetelah GPG diimpor, kita dapat menambahkan repositori APT ONLYOFFICE:
echo "deb https://download.onlyoffice.com/repo/debian squeeze main" | sudo tee /etc/apt/sources.list.d/onlyoffice.listPerbarui cache pengelola paket dan instal ONLYOFFICE Docs.
sudo apt update
sudo apt install onlyoffice-documentserver ttf-mscorefonts-installerSaat diminta untuk memasukkan kata sandi database, cukup tekan tombol <ENTER> di keyboard Anda untuk melanjutkan. Selanjutnya, setujui ketentuan perjanjian lisensi.
Periksa apakah ada kesalahan yang terjadi selama instalasi. Jika semuanya berjalan lancar, ONLYOFFICE dapat diakses di browser Anda di http://localhost atau http://serverdomain_or_ip.
Langkah 4: Amankan ONLYOFFICE Docs dengan SSL
Kita dapat mengonfigurasi ONLYOFFICE Docs untuk akses menggunakan protokol HTTPS yang jauh lebih aman daripada HTTP. Secara default, ini dikonfigurasi untuk berjalan di HTTP.
Dalam pengaturan kami, server yang digunakan berjalan di lingkungan Cloud. Ini memungkinkan penggunaan SSL gratis dari Let’s Encrypt.
Menggunakan SSL Let’s Encrypt
Cara termudah untuk mengonfigurasi HTTPS untuk ONLYOFFICE Docs adalah menggunakan Sertifikat SSL Let’s Encrypt dengan certbot. Gunakan perintah berikut untuk menginstal certbot.
- Debian/Ubuntu:
sudo apt update && sudo apt install certbot
sudo apt install python3-certbot-nginx- Sistem berbasis RHEL:
sudo dnf -y install epel-release
sudo dnf -y install certbot python3-certbot-nginxSetelah Anda menginstal certbot, jalankan skrip ONLYOFFICE yang mengotomatiskan konfigurasi SSL.
sudo bash /usr/bin/documentserver-letsencrypt.sh [email yourdomain.comGanti [email dengan alamat email Anda yang sebenarnya, dan yourdomain.com dengan nama domain yang dikonfigurasi di DNS untuk server ONLYOFFICE Docs.
Saat Anda menjalankan perintah-perintah tersebut, itu akan menampilkan jalur ke file log dari tempat Anda dapat memeriksa kemajuan pembuatan SSL dan setiap kesalahan akan dicatat di sana.
Saving debug log to /var/log/letsencrypt/letsencrypt.logUntuk memeriksa isi file log, gunakan perintah cat:
sudo cat /var/log/letsencrypt/letsencrypt.logContoh beberapa baris terakhir keluaran dari file:
...
-----BEGIN CERTIFICATE-----
MIIEVzCCAj+gAwIBAgIRAIOPbGPOsTmMYgZigxXJ/d4wDQYJKoZIhvcNAQELBQAw
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjQwMzEzMDAwMDAw
WhcNMjcwMzEyMjM1OTU5WjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg
RW5jcnlwdDELMAkGA1UEAxMCRTUwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQNCzqK
a2GOtu/cX1jnxkJFVKtj9mZhSAouWXW0gQI3ULc/FnncmOyhKJdyIBwsz9V8UiBO
VHhbhBRrwJCuhezAUUE8Wod/Bk3U/mDR+mwt4X2VEIiiCFQPmRpM5uoKrNijgfgw
gfUwDgYDVR0PAQH/BAQDAgGGMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcD
ATASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBSfK1/PPCFPnQS37SssxMZw
i9LXDTAfBgNVHSMEGDAWgBR5tFnme7bl5AFzgAiIyBpY9umbbjAyBggrBgEFBQcB
AQQmMCQwIgYIKwYBBQUHMAKGFmh0dHA6Ly94MS5pLmxlbmNyLm9yZy8wEwYDVR0g
BAwwCjAIBgZngQwBAgEwJwYDVR0fBCAwHjAcoBqgGIYWaHR0cDovL3gxLmMubGVu
Y3Iub3JnLzANBgkqhkiG9w0BAQsFAAOCAgEAH3KdNEVCQdqk0LKyuNImTKdRJY1C
2uw2SJajuhqkyGPY8C+zzsufZ+mgnhnq1A2KVQOSykOEnUbx1cy637rBAihx97r+
bcwbZM6sTDIaEriR/PLk6LKs9Be0uoVxgOKDcpG9svD33J+G9Lcfv1K9luDmSTgG
6XNFIN5vfI5gs/lMPyojEMdIzK9blcl2/1vKxO8WGCcjvsQ1nJ/Pwt8LQZBfOFyV
XP8ubAp/au3dc4EKWG9MO5zcx1qT9+NXRGdVWxGvmBFRAajciMfXME1ZuGmk3/GO
koAM7ZkjZmleyokP1LGzmfJcUd9s7eeu1/9/eg5XlXd/55GtYjAM+C4DG5i7eaNq
cm2F+yxYIPt6cbbtYVNJCGfHWqHEQ4FYStUyFnv8sjyqU8ypgZaNJ9aVcWSICLOI
E1/Qv/7oKsnZCWJ926wU6RqG1OYPGOi1zuABhLw61cuPVDT28nQS/e6z95cJXq0e
K1BcaJ6fJZsmbjRgD5p3mvEf5vdQM7MCEvU0tHbsx2I5mHHJoABHb8KVBgWp/lcX
GWiWaeOyB7RP+OfDtvi2OsapxXiV7vNVs7fMlrRjY1joKaqmmycnBvAq14AEbtyL
sVfOS66B8apkeFX2NY4XPEYV4ZSCe8VHPrdrERk2wILG3T/EGmSIkCYVUMSnjmJd
VQD9F6Na/+zmXCc=
-----END CERTIFICATE-----
2024-07-30 08:56:34,141:DEBUG:acme.client:Storing nonce: Ma8ZwRNA9J1JoJ_IMl_v_1HLCTTt5G01XNs8p_Mvri6JbKsSWrI
2024-07-30 08:56:34,142:DEBUG:certbot._internal.storage:Creating directory /etc/letsencrypt/archive.
2024-07-30 08:56:34,142:DEBUG:certbot._internal.storage:Creating directory /etc/letsencrypt/live.
2024-07-30 08:56:34,142:DEBUG:certbot._internal.storage:Writing README to /etc/letsencrypt/live/README.
2024-07-30 08:56:34,143:DEBUG:certbot._internal.storage:Creating directory /etc/letsencrypt/archive/docs.cloudlabske.com.
2024-07-30 08:56:34,143:DEBUG:certbot._internal.storage:Creating directory /etc/letsencrypt/live/docs.cloudlabske.com.
2024-07-30 08:56:34,143:DEBUG:certbot._internal.storage:Writing certificate to /etc/letsencrypt/live/docs.cloudlabske.com/cert.pem.
2024-07-30 08:56:34,143:DEBUG:certbot._internal.storage:Writing private key to /etc/letsencrypt/live/docs.cloudlabske.com/privkey.pem.
2024-07-30 08:56:34,143:DEBUG:certbot._internal.storage:Writing chain to /etc/letsencrypt/live/docs.cloudlabske.com/chain.pem.
2024-07-30 08:56:34,143:DEBUG:certbot._internal.storage:Writing full chain to /etc/letsencrypt/live/docs.cloudlabske.com/fullchain.pem.
2024-07-30 08:56:34,144:DEBUG:certbot._internal.storage:Writing README to /etc/letsencrypt/live/docs.cloudlabske.com/README.
2024-07-30 08:56:34,156:DEBUG:certbot.configuration:Var account=985390e388f48deb37eab1e67d361272 (set by user).
2024-07-30 08:56:34,157:DEBUG:certbot._internal.plugins.selection:Requested authenticator webroot and installer None
2024-07-30 08:56:34,157:DEBUG:certbot._internal.plugins.selection:Requested authenticator webroot and installer None
2024-07-30 08:56:34,157:DEBUG:certbot.configuration:Var webroot_path=['/var/www/onlyoffice/documentserver/letsencrypt'] (set by user).
2024-07-30 08:56:34,157:DEBUG:certbot.configuration:Var webroot_map={'docs.cloudlabske.com': '/var/www/onlyoffice/documentserver/letsencrypt'} (set by user).
2024-07-30 08:56:34,157:DEBUG:certbot._internal.storage:Writing new config /etc/letsencrypt/renewal/docs.cloudlabske.com.conf.
2024-07-30 08:56:34,159:DEBUG:certbot._internal.display.obj:Notifying user:
Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/docs.cloudlabske.com/fullchain.pem
Key is saved at: /etc/letsencrypt/live/docs.cloudlabske.com/privkey.pem
This certificate expires on 2024-10-28.
These files will be updated when the certificate renews.
Certbot has set up a scheduled task to automatically renew this certificate in the background.
2024-07-30 08:56:34,161:DEBUG:certbot._internal.display.obj:Notifying user: If you like Certbot, please consider supporting our work by:
* Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
* Donating to EFF: https://eff.org/donate-leMenggunakan sertifikat SSL yang ditandatangani sendiri
Untuk sistem yang berada dalam jaringan pribadi, Anda dapat membuat sertifikat yang ditandatangani sendiri. Sebagai alternatif, jika Anda mengelola DNS di Cloudflare, lihat artikel kami tentang cara mengonfigurasi Let’s Encrypt dengan DNS Cloudflare.
Pengguna yang menggunakan sertifikat self-signed dapat mengedit konten file berikut dan menyesuaikan jalur ke kunci dan sertifikat domain:
sudo nano /etc/onlyoffice/documentserver/nginx/ds.confLihat konten di bawah ini dari pengaturan kami dalam artikel ini menggunakan Let’s Encrypt.
include /etc/nginx/includes/http-common.conf;
## Normal HTTP host
server {
listen 0.0.0.0:80;
listen [::]:80 default_server;
server_name _;
server_tokens off;
set $secure_link_secret nsdy8N28Ylobmp5EL4wF;
## Redirects all traffic to the HTTPS host
root /nowhere; ## root doesn't have to be a valid path since we are redirecting
rewrite ^ https://$host$request_uri? permanent;
}
#HTTP host for internal services
server {
listen 127.0.0.1:80;
listen [::1]:80;
server_name localhost;
server_tokens off;
set $secure_link_secret nsdy8N28Ylobmp5EL4wF;
include /etc/nginx/includes/ds-common.conf;
include /etc/nginx/includes/ds-docservice.conf;
}
## HTTPS host
server {
listen 0.0.0.0:443 ssl;
listen [::]:443 ssl default_server;
server_tokens off;
set $secure_link_secret nsdy8N28Ylobmp5EL4wF;
root /usr/share/nginx/html;
## Strong SSL Security
## https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html
ssl_certificate /etc/letsencrypt/live/docs.cloudlabske.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/docs.cloudlabske.com/privkey.pem;
# Uncomment string below and specify the path to the file with the password if you use encrypted certificate key
# ssl_password_file {{SSL_PASSWORD_PATH}};
ssl_verify_client off;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_protocols TLSv1.2;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_prefer_server_ciphers on;
add_header Strict-Transport-Security max-age=31536000;
# add_header X-Frame-Options SAMEORIGIN;
add_header X-Content-Type-Options nosniff;
## [Optional] If your certficate has OCSP, enable OCSP stapling to reduce the overhead and latency of running SSL.
## Replace with your ssl_trusted_certificate. For more info see:
## - https://medium.com/devops-programming/4445f4862461
## - https://www.ruby-forum.com/topic/4419319
## - https://linux-console.net/community/tutorials/how-to-configure-ocsp-stapling-on-apache-and-nginx
# ssl_stapling on;
# ssl_stapling_verify on;
# ssl_trusted_certificate /etc/nginx/ssl/stapling.trusted.crt;
# resolver 208.67.222.222 208.67.222.220 valid=300s; # Can change to your DNS resolver if desired
# resolver_timeout 10s;
## [Optional] Generate a stronger DHE parameter:
## cd /etc/ssl/certs
## sudo openssl dhparam -out dhparam.pem 4096
##
# ssl_dhparam /etc/ssl/certs/dhparam.pem;
include /etc/nginx/includes/ds-*.conf;
}Perbarui ssl_certificate dan ssl_certificate_key agar sesuai dengan lingkungan Anda.
Akses Dokumen OnlyOffice di https://yourdomain
Anda akan mendapatkan halaman sambutan ONLYOFFICE Docs dengan petunjuk lebih lanjut tentang cara mengaktifkan contoh dokumen dan mengintegrasikannya ke aplikasi Anda menggunakan API yang disediakan.
Langkah 5: Integrasikan aplikasi pihak ketiga
Proses integrasi ONLYOFFICE dengan aplikasi pihak ketiga seperti Pydio, Zimbra, WordPress, Odoo, SuiteCRM, Mattermost, dll. berjalan dengan lancar. Lihat semua konektor di tautan berikut:
- Daftar konektor ONLYOFFICE


