Stirling PDF: Cara Memasang Editor PDF Sendiri di VPS
Untuk menggabungkan kontrak dengan lampiran, mengompres hasil pemindaian paspor, atau menyembunyikan detail pembayaran, banyak orang mengunggah dokumen ke layanan online pertama yang mereka temukan. Bersama file tersebut, tanda tangan, alamat, faktur, dan data rahasia lainnya mungkin terkirim ke situs pihak ketiga.
Stirling PDF menawarkan pendekatan yang berbeda. Ini adalah aplikasi web dengan puluhan alat PDF yang dapat Anda jalankan di VPS sendiri. Antarmukanya dibuka di browser pada komputer atau ponsel, sedangkan server Anda memproses dokumen.
Di bawah ini, kita akan melihat fitur Stirling PDF yang paling menarik, persyaratan server, serta cara memasangnya di Ubuntu dengan Docker Compose, autentikasi, dan HTTPS.
Apa Itu Stirling PDF?
Stirling PDF adalah platform self-hosted untuk mengedit dan memproses file PDF. Platform ini menggabungkan lebih dari 55 operasi: menggabungkan dan memisahkan file, mengatur ulang halaman, kompresi, konversi, OCR, tanda tangan, watermark, perbandingan dokumen, serta penghapusan metadata dan informasi rahasia.
Layanan ini dapat digunakan sebagai aplikasi desktop, produk cloud, atau server self-hosted. Dalam mode self-hosted, file diproses oleh instans Stirling PDF milik Anda sendiri, dan aksesnya dapat dilindungi dengan kata sandi serta HTTPS. Edisi server gratis ditujukan untuk grup hingga lima pengguna; edisi berbayar tersedia untuk tim yang lebih besar dan fitur enterprise tertentu.
Perbedaan utama dari konverter online biasa adalah kendali. Anda memilih penyedia, lokasi server, pengguna, dan aturan akses. Pada saat yang sama, Anda tidak perlu mencari situs terpisah untuk setiap operasi: satu antarmuka menggantikan kumpulan layanan untuk kompresi, konversi, penandatanganan, dan OCR.
Fitur Stirling PDF yang Paling Menarik
Pengelolaan Halaman Secara Visual
Dalam mode Multi-Tool, dokumen ditampilkan sebagai kisi thumbnail. Halaman dapat diseret, diputar, dihapus, dipisahkan, disisipkan ke posisi yang diperlukan, dan diekspor secara selektif. File hanya diunggah sekali, dan perubahan mendukung undo serta redo.
OCR untuk Dokumen Hasil Pemindaian
OCR menambahkan lapisan teks ke PDF hasil pemindaian. Setelah diproses, Anda dapat mencari kata di dalam dokumen, memilih teks, dan menyalinnya. Pelurusan kemiringan, penghapusan noise, dan peningkatan kontras juga tersedia. Untuk bahasa Rusia, Anda perlu menambahkan paket Tesseract rus.traineddata secara terpisah.
Redaksi Data yang Aman
Kotak hitam yang ditempatkan di atas nomor rekening tidak selalu menghapus teks asli. Alat Redact dapat menghapus kecocokan dari struktur PDF, bukan sekadar menutupinya dengan lapisan visual. Anda dapat menandai area secara manual atau mencari seluruh dokumen untuk nomor telepon, alamat email, nomor kartu, dan data lainnya menggunakan kata atau ekspresi reguler.
Perbandingan Versi dan Pemindai Seluler
Compare menunjukkan kata mana yang ditambahkan atau dihapus antara dua versi kontrak, laporan, atau spesifikasi teknis. Untuk dokumen kertas, tersedia pemindai seluler: kode QR muncul di komputer, ponsel mengunggah foto langsung ke sesi saat ini, dan file sementara otomatis dihapus setelah diunduh atau setelah sepuluh menit tidak aktif.
Otomatisasi dan API
Automate bekerja seperti makro untuk file PDF. Misalnya, Anda dapat menyimpan workflow berikut satu kali:
OCR → remove blank pages → compress → add a watermark → set a password
Workflow yang sama kemudian dapat diterapkan ke file baru tanpa mengulangi setiap langkah. Stirling PDF juga mendukung pemrosesan file dari folder yang dipantau dan menyediakan REST API dengan dokumentasi Swagger bawaan.
VPS seperti Apa yang Dibutuhkan Stirling PDF?
Memproses PDF mungkin membutuhkan memori jauh lebih besar daripada ukuran file sumbernya. OCR, mengubah halaman menjadi gambar, dan mengonversi dokumen office melalui LibreOffice sangat membebani sumber daya.
Untuk penerapan uji coba, RAM 2 GB sudah cukup, tetapi untuk penggunaan rutin sebaiknya pilih:
- 2 vCPU;
- RAM 4 GB;
- setidaknya 10–20 GB ruang kosong pada disk SSD atau NVMe;
- Ubuntu 22.04 atau 24.04.
Jika beberapa pengguna menjalankan OCR atau konversi secara bersamaan, lebih masuk akal memilih 4 vCPU dan RAM 8 GB. Untuk server dengan daya terbatas, tersedia image latest-ultra-lite, sedangkan latest-fat menyertakan font dan alat tambahan untuk konversi berkualitas lebih tinggi. Image standar latest cocok untuk sebagian besar pengguna.
Memasang Stirling PDF dengan Docker Compose
Dalam konfigurasi di bawah, container hanya mendengarkan pada antarmuka lokal. Akses eksternal nantinya melewati Nginx dengan HTTPS, sehingga port 8080 tidak akan terbuka untuk seluruh internet.
Langkah 1. Pasang Docker
ssh root@SERVER_IP
apt update && apt upgrade -y
apt install -y curl
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
rm get-docker.shVerifikasi instalasi:
docker --version
docker compose versionLangkah 2. Buat Konfigurasi Docker Compose
mkdir -p /opt/stirling-pdf/{configs,logs,pipeline}
cd /opt/stirling-pdf
nano docker-compose.ymlTambahkan konfigurasi berikut:
services:
stirling-pdf:
image: docker.stirlingpdf.com/stirlingtools/stirling-pdf:latest
container_name: stirling-pdf
restart: unless-stopped
ports:
- "127.0.0.1:8080:8080"
volumes:
- ./configs:/configs
- ./logs:/logs
- ./pipeline:/pipeline
environment:
- SECURITY_ENABLELOGIN=true
- SYSTEM_DEFAULTLOCALE=ru-RU
- SYSTEM_GOOGLEVISIBILITY=falseJalankan layanan:
docker compose up -d
docker compose psUntuk diagnostik, gunakan:
docker compose logs --tail=100 stirling-pdfLangkah 3. Masuk untuk Pertama Kali
Sebelum mengonfigurasi domain, buka antarmuka melalui tunnel SSH. Jalankan perintah berikut di komputer Anda:
ssh -L 8080:127.0.0.1:8080 root@SERVER_IPBuka http://localhost:8080. Kredensial login pertama secara default adalah nama pengguna admin dan kata sandi stirling. Segera ubah kata sandi di pengaturan akun.
Menghubungkan Domain dan HTTPS
Buat catatan DNS tipe A untuk alamat seperti pdf.example.com dan arahkan ke alamat IP server. Kemudian pasang Nginx dan Certbot:
apt install -y nginx certbot python3-certbot-nginx
nano /etc/nginx/sites-available/stirling-pdfTambahkan konfigurasi berikut dan ganti nama domainnya:
server {
listen 80;
server_name pdf.example.com;
client_max_body_size 500M;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 300s;
}
}Aktifkan situs dan dapatkan sertifikat:
ln -s /etc/nginx/sites-available/stirling-pdf /etc/nginx/sites-enabled/stirling-pdf
nginx -t
systemctl reload nginx
certbot --nginx -d pdf.example.comKini Stirling PDF tersedia melalui HTTPS, sementara port internal 8080 tetap tertutup. Untuk file yang lebih besar dari 500 MB, tingkatkan client_max_body_size.
Cara Menambahkan OCR Bahasa Rusia
Buat direktori dan unduh paket Tesseract bahasa Inggris serta Rusia:
cd /opt/stirling-pdf
mkdir -p tessdata
curl -L -o tessdata/eng.traineddata \
https://raw.githubusercontent.com/tesseract-ocr/tessdata_fast/main/eng.traineddata
curl -L -o tessdata/rus.traineddata \
https://raw.githubusercontent.com/tesseract-ocr/tessdata_fast/main/rus.traineddataTambahkan baris berikut ke bagian volumes pada file docker-compose.yml:
- ./tessdata:/usr/share/tessdataTerapkan perubahan dan periksa bahasa yang tersedia:
docker compose up -d
docker exec stirling-pdf tesseract --list-langsDaftar tersebut harus mencakup eng dan rus.
Keamanan, Pembaruan, dan Keterbatasan
Sebelum penggunaan rutin, ubah kata sandi default, pertahankan autentikasi tetap aktif, jangan membuka port 8080, dan izinkan hanya SSH, HTTP, serta HTTPS melalui firewall. Direktori configs dan pipeline harus disertakan dalam cadangan. Analitik Stirling PDF hanya diaktifkan setelah persetujuan pengguna dan dapat dinonaktifkan sepenuhnya oleh administrator.
Untuk memperbarui aplikasi, jalankan:
cd /opt/stirling-pdf
docker compose pull
docker compose up -dStirling PDF menangani sebagian besar tugas sehari-hari, tetapi tidak selalu mempertahankan tata letak kompleks saat mengonversi antara PDF dan format office. OCR tidak mengenali struktur tabel dan rumus, sementara kualitas untuk tulisan tangan atau teks yang sangat kecil terbatas. Untuk hasil yang baik, gunakan hasil pemindaian yang jelas dengan resolusi sekitar 300 DPI.
Stirling PDF di VPS dari tropic.host
Layanan ini tidak memerlukan kartu grafis: RAM, kinerja CPU yang stabil, dan penyimpanan cepat lebih penting. Sebaiknya pilih lokasi yang dekat dengan pengguna karena dokumen besar pertama-tama diunggah ke server lalu diunduh kembali.
Untuk instans pribadi atau tim kecil, Linux VPS dengan 2 vCPU dan RAM 4 GB biasanya sudah cukup. Di VPS dari tropic.host, Anda dapat memasang Ubuntu, menjalankan konfigurasi Docker Compose di atas, dan meng-host antarmuka pada subdomain terpisah. Memori tambahan sangat penting jika container lain berjalan di server yang sama.
Kesimpulan
Stirling PDF mengubah VPS menjadi layanan web dokumen milik Anda sendiri. Layanan ini menggabungkan puluhan alat serta mendukung OCR, penghapusan data rahasia yang sebenarnya, perbandingan versi, pemindaian seluler, otomatisasi, dan API.
Alasan utama untuk menerapkannya sendiri adalah kendali atas file Anda. Untuk kontrak, faktur, formulir, dan dokumen internal, instans yang dilindungi dengan autentikasi serta HTTPS lebih nyaman daripada kumpulan konverter online acak.
FAQ
Apakah Stirling PDF gratis?
Ya. Edisi self-hosted gratis mendukung hingga lima pengguna. Tim dan organisasi yang lebih besar serta membutuhkan fitur enterprise memerlukan edisi berbayar.
Apakah dokumen meninggalkan server saya?
Dalam mode self-hosted, dokumen diproses oleh instans Stirling PDF milik Anda sendiri. Tingkat keamanan akhir bergantung pada konfigurasi VPS, HTTPS, kata sandi, pembaruan, dan akses administrator.
Apakah RAM 2 GB cukup?
Untuk pengujian dan operasi ringan, ya. Untuk penggunaan rutin, OCR, dan konversi, sebaiknya pilih RAM 4 GB, atau lebih untuk beban bersamaan.
Apakah domain diperlukan?
Tidak. Layanan dapat dibuka melalui alamat IP atau tunnel SSH. Domain berguna untuk alamat permanen yang nyaman dan konfigurasi HTTPS yang tepat.
Apakah OCR bahasa Rusia didukung?
Ya. Tambahkan file rus.traineddata ke direktori Tesseract dan mount file tersebut ke dalam container.
