Pernahkah Anda merasa ragu saat harus mengunggah dokumen sensitif perusahaan atau data pribadi ke situs web “Free PDF Converter” antah berantah hanya untuk menggabungkan dua halaman? Atau mungkin Anda lelah dengan biaya lisensi software PDF editor komersial yang semakin mahal setiap tahunnya? Isu privasi data dan efisiensi biaya adalah dua tantangan utama dalam pengelolaan dokumen digital. Solusi terbaik untuk mengatasi masalah ini adalah dengan melakukan self-hosting alat manajemen PDF Anda sendiri.
Perkenalkan Stirling-PDF, sebuah Swiss Army Knife untuk manipulasi PDF yang dapat Anda jalankan di server pribadi Anda. Artikel ini akan memandu Anda mengenal fitur Stirling-PDF hingga tahapan deployment di server Ubuntu.
Apa Itu Stirling-PDF?
Stirling-PDF adalah aplikasi manipulasi PDF berbasis web yang bersifat open-source. Aplikasi ini menggabungkan berbagai fungsi PDF yang biasanya terpisah-pisah menjadi satu antarmuka pengguna (UI) yang modern dan intuitif.
Keunggulan utama Stirling-PDF terletak pada kedaulatan data. Semua proses pemrosesan file dilakukan secara lokal di server Anda. Tidak ada file yang dikirim ke server pihak ketiga, menjadikannya solusi ideal untuk organisasi yang memiliki standar kepatuhan privasi data (GDPR, HIPAA, dll) yang ketat.
Fitur Unggulan Stirling-PDF
Mengapa komunitas open source sangat menyukai Stirling-PDF? Berikut adalah fitur-fitur kuncinya:
- Manipulasi Halaman: Menggabungkan (Merge), memisahkan (Split), memutar (Rotate), dan menyusun ulang halaman PDF.
- Konversi Format: Mengubah PDF ke Gambar, Gambar ke PDF, PDF ke Word/HTML, dan sebaliknya.
- Keamanan: Menambahkan password, menghapus password, memberikan tanda tangan digital, dan menambahkan watermark.
- OCR (Optical Character Recognition): Mengubah PDF hasil scan menjadi teks yang bisa dicari (searchable) dan disalin.
- Edit & Kompresi: Menambahkan teks/gambar overlay dan memperkecil ukuran file PDF.
- UI Modern: Mendukung Dark Mode dan antarmuka yang responsif.
Persyaratan Sistem
Stirling-PDF berjalan di dalam kontainer Docker, sehingga persyaratannya cukup fleksibel. Namun, untuk performa yang lancar terutama saat menggunakan fitur OCR, berikut rekomendasinya:
- CPU: Minimal 2 vCPU (OCR membutuhkan daya pemrosesan yang cukup tinggi).
- RAM: Minimal 2 GB (4 GB disarankan untuk produksi).
- Disk: 10 GB ruang kosong (untuk image Docker dan temporary files).
Tutorial ini menggunakan sistem operasi Ubuntu LTS.
Panduan Instalasi Stirling-PDF di Ubuntu
Kita akan melakukan deployment menggunakan Docker Compose dan menjadikannya siap produksi dengan Nginx Reverse Proxy dan SSL.
Persiapan Server
Pertama, pastikan sistem operasi Anda mutakhir dan instal dependensi dasar: Docker, Docker Compose, Nginx, dan Certbot.
sudo apt update && sudo apt upgrade -y
sudo sh -c "curl -fsSL https://get.docker.com/ | sh"
sudo apt install nginx certbot python3-certbot-nginx -yInstalasi Stirling-PDF dengan Docker Compose
Cara terbaik mengelola Stirling-PDF adalah menggunakan Docker Compose.
Buat direktori kerja:
mkdir stirling-pdf
cd stirling-pdfBuat file docker-compose.yml:
nano docker-compose.ymlMasukkan konfigurasi berikut:
services:
stirling-pdf:
image: stirlingtools/stirling-pdf:latest
container_name: stirling-pdf
ports:
- '8080:8080'
volumes:
# Persistent data storage
- ./stirling-data/tessdata:/usr/share/tessdata # OCR language files
- ./stirling-data/configs:/configs # Settings & database
- ./stirling-data/logs:/logs # Application logs
- ./stirling-data/customFiles:/customFiles:rw # Custom branding files
- ./stirling-data/pipeline:/pipeline # Automation configs
environment:
# Core Settings
- SECURITY_ENABLELOGIN=true # Enable user authentication
# Language & Localization
- LANGS=en_GB # Change to your locale
# System Configuration
- SYSTEM_DEFAULTLOCALE=en-GB # Default locale
- SYSTEM_GOOGLEVISIBILITY=false # Hide from search engines
- SYSTEM_ROOTURIPATH=/ # Base URL path
- SYSTEM_CONNECTIONTIMEOUTMINUTES=5 # Connection timeout
- SYSTEM_MAXFILESIZE=2000 # Max file size in MB
# Optional: Logging
- SYSTEM_CUSTOMSTATICFILEPATH=/customFiles/static/ # Custom files path
restart: unless-stopped
# Optional: Resource limits
deploy:
resources:
limits:
memory: 4G
cpus: '2.0'
reservations:
memory: 2G
cpus: '1.0'Jalankan Stirling-PDF:
sudo docker compose up -dVerifikasi instalasi dengan mengecek status container:
sudo docker compose psJika statusnya Up, aplikasi sudah berjalan di http://IP-Server-Anda:8080.
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
stirling-pdf stirlingtools/stirling-pdf:latest "tini -- /scripts/in..." stirling-pdf 30 seconds ago Up 28 seconds 0.0.0.0:8080->8080/tcp, [::]:8080->8080/tcpKonfigurasi Nginx Reverse Proxy
Agar aplikasi dapat diakses melalui domain (misal: pdf.domainanda.com) dan mendukung upload file besar, kita perlu mengonfigurasi Nginx.
Buat file konfigurasi server block:
sudo nano /etc/nginx/sites-available/pdf.domainanda.com.confMasukkan konfigurasi berikut (sesuaikan server_name):
server {
listen 80;
server_name pdf.domainanda.com;
# Log files
access_log /var/log/nginx/stirling_access.log;
error_log /var/log/nginx/stirling_error.log;
# PENTING: Izinkan upload file besar (contoh: 100MB)
client_max_body_size 100M;
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;
# Konfigurasi timeout untuk proses berat seperti OCR
proxy_read_timeout 300s;
proxy_connect_timeout 300s;
}
}Aktifkan konfigurasi:
sudo ln -s /etc/nginx/sites-available/pdf.domainanda.com.conf /etc/nginx/sites-enabled/Cek sintaks dan restart Nginx:
sudo nginx -t
sudo systemctl restart nginxInstalasi SSL dengan Certbot
Langkah terakhir adalah mengamankan koneksi dengan HTTPS agar dokumen yang diupload terenkripsi.
sudo certbot --non-interactive \
-m [email protected] \
--agree-tos \
--no-eff-email \
--nginx -d pdf.domainanda.com \
--redirectStirling-PDF sudah dapat diakses di https://pdf.domainanda.com. Login dengan username = admin dan password = stirling.
Penutup
Selamat! Anda kini memiliki Stirling-PDF yang berjalan sepenuhnya di server Anda sendiri. Anda dapat mengaksesnya melalui https://pdf.domainanda.com dan mulai memproses dokumen dengan aman. Dengan langkah ini, Anda tidak hanya menghemat biaya operasional IT, tetapi juga menjamin privasi dan keamanan data dokumen organisasi Anda. Stirling-PDF adalah bukti bahwa solusi open-source mampu bersaing, bahkan mengungguli solusi komersial dalam hal fleksibilitas dan keamanan.




