Tropic Host

Stirling PDF pe un VPS: instalează propriul editor PDF

6 min citire
Tropic
Stirling PDF pe un VPS: instalează propriul editor PDF

Language: ro

Stirling PDF: cum instalezi propriul editor PDF pe un VPS

Pentru a uni un contract cu o anexă, a comprima o scanare de pașaport sau a ascunde datele de plată, multe persoane încarcă documentul pe primul serviciu online găsit. Odată cu fișierul, pe site-ul unei terțe părți pot ajunge semnături, adrese, facturi și alte date confidențiale.

Stirling PDF oferă o abordare diferită. Este o aplicație web cu zeci de instrumente PDF, pe care o poți rula pe propriul VPS. Interfața se deschide în browser pe computer sau telefon, iar serverul tău procesează documentele.

Mai jos vom analiza cele mai interesante funcții Stirling PDF, cerințele serverului și instalarea pe Ubuntu cu Docker Compose, autentificare și HTTPS.

Ce este Stirling PDF

Stirling PDF este o platformă self-hosted pentru editarea și procesarea fișierelor PDF. Reunește peste 55 de operațiuni: îmbinarea și separarea fișierelor, reordonarea paginilor, comprimare, conversie, OCR, semnături, filigrane, compararea documentelor și eliminarea metadatelor și a informațiilor confidențiale.

Serviciul poate fi folosit ca aplicație pentru desktop, produs cloud sau server self-hosted. În modul self-hosted, fișierele sunt procesate de propria instanță Stirling PDF, iar accesul poate fi protejat cu parolă și HTTPS. Ediția gratuită pentru server este destinată grupurilor de până la cinci utilizatori; pentru echipe mai mari și anumite funcții enterprise există ediții plătite.

Diferența principală față de un convertor online obișnuit este controlul. Tu alegi furnizorul, locația serverului, utilizatorii și regulile de acces. În același timp, nu trebuie să cauți un site separat pentru fiecare operațiune: o singură interfață înlocuiește un grup de servicii pentru comprimare, conversie, semnare și OCR.

Cele mai interesante funcții Stirling PDF

Gestionarea vizuală a paginilor

În modul Multi-Tool, documentul este afișat ca o grilă de miniaturi. Paginile pot fi trase, rotite, șterse, împărțite, inserate în poziția dorită și exportate selectiv. Fișierul este încărcat o singură dată, iar modificările pot fi anulate sau refăcute.

OCR pentru documente scanate

OCR adaugă un strat de text unui PDF scanat. După procesare, poți căuta cuvinte în document, selecta textul și îl poți copia. Sunt disponibile îndreptarea paginilor, eliminarea zgomotului și îmbunătățirea contrastului. Pentru limba rusă trebuie adăugat separat pachetul Tesseract rus.traineddata.

Redactarea sigură a datelor confidențiale

Un dreptunghi negru pus peste un număr de cont nu elimină întotdeauna textul original. Instrumentul Redact poate elimina potrivirile din structura PDF-ului, nu doar să le acopere cu un strat vizual. Poți marca manual o zonă sau poți căuta în întregul document numere de telefon, adrese de e-mail, numere de card și alte date folosind cuvinte sau expresii regulate.

Compararea versiunilor și scannerul mobil

Compare arată ce cuvinte au fost adăugate sau eliminate între două versiuni ale unui contract, raport sau caiet de sarcini. Pentru documentele pe hârtie există și un scanner mobil: pe computer apare un cod QR, telefonul încarcă fotografiile direct în sesiunea curentă, iar fișierele temporare sunt șterse automat după descărcare sau după zece minute de inactivitate.

Automatizare și API

Automate funcționează ca niște macrocomenzi pentru fișiere PDF. De exemplu, poți salva o dată următorul flux de lucru:

OCR → remove blank pages → compress → add a watermark → set a password

Același flux poate fi aplicat apoi fișierelor noi fără repetarea fiecărui pas. Stirling PDF suportă și procesarea fișierelor dintr-un folder urmărit și oferă un REST API cu documentație Swagger integrată.

De ce VPS are nevoie Stirling PDF

Procesarea unui PDF poate necesita mult mai multă memorie decât ocupă fișierul sursă. OCR-ul, conversia paginilor în imagini și conversia documentelor Office prin LibreOffice consumă în special multe resurse.

Pentru o instalare de test, 2 GB de RAM sunt suficienți, dar pentru utilizare regulată este mai bine să alegi:

  • 2 vCPU;
  • 4 GB RAM;
  • cel puțin 10–20 GB spațiu liber pe un SSD sau o unitate NVMe;
  • Ubuntu 22.04 sau 24.04.

Dacă mai mulți utilizatori rulează OCR sau conversii în același timp, este mai potrivit să alegi 4 vCPU și 8 GB RAM. Pentru un server cu putere redusă există imaginea latest-ultra-lite, iar latest-fat include fonturi și instrumente suplimentare pentru conversii de calitate mai bună. Imaginea standard latest este potrivită pentru majoritatea utilizatorilor.

Instalarea Stirling PDF cu Docker Compose

În configurația de mai jos, containerul ascultă doar pe interfața locală. Accesul extern va trece ulterior prin Nginx cu HTTPS, astfel încât portul 8080 nu va fi expus întregului internet.

Pasul 1. Instalează 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.sh

Verifică instalarea:

docker --version
docker compose version

Pasul 2. Creează configurația Docker Compose

mkdir -p /opt/stirling-pdf/{configs,logs,pipeline}
cd /opt/stirling-pdf
nano docker-compose.yml

Adaugă configurația:

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=false

Pornește serviciul:

docker compose up -d
docker compose ps

Pentru diagnosticare, folosește:

docker compose logs --tail=100 stirling-pdf

Pasul 3. Conectează-te pentru prima dată

Înainte de a configura un domeniu, deschide interfața printr-un tunel SSH. Rulează comanda pe computerul tău:

ssh -L 8080:127.0.0.1:8080 root@SERVER_IP

Accesează http://localhost:8080. Datele implicite pentru prima autentificare sunt numele de utilizator admin și parola stirling. Schimbă imediat parola din setările contului.

Conectarea unui domeniu și HTTPS

Creează o înregistrare DNS de tip A pentru o adresă precum pdf.example.com și indic-o către adresa IP a serverului. Apoi instalează Nginx și Certbot:

apt install -y nginx certbot python3-certbot-nginx
nano /etc/nginx/sites-available/stirling-pdf

Adaugă configurația și înlocuiește numele domeniului:

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;
    }
}

Activează site-ul și obține un certificat:

ln -s /etc/nginx/sites-available/stirling-pdf /etc/nginx/sites-enabled/stirling-pdf
nginx -t
systemctl reload nginx
certbot --nginx -d pdf.example.com

Stirling PDF este acum disponibil prin HTTPS, iar portul intern 8080 rămâne închis. Pentru fișiere mai mari de 500 MB, mărește valoarea client_max_body_size.

Cum adaugi OCR în limba rusă

Creează un director și descarcă pachetele Tesseract pentru engleză și rusă:

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.traineddata

Adaugă următoarea linie în secțiunea volumes a fișierului docker-compose.yml:

      - ./tessdata:/usr/share/tessdata

Aplică modificările și verifică limbile disponibile:

docker compose up -d
docker exec stirling-pdf tesseract --list-langs

Lista ar trebui să includă eng și rus.

Securitate, actualizări și limitări

Înainte de utilizarea regulată, schimbă parola implicită, păstrează autentificarea activată, nu expune portul 8080 și permite prin firewall doar SSH, HTTP și HTTPS. Directoarele configs și pipeline trebuie incluse în copiile de siguranță. Analizele Stirling PDF sunt activate doar după consimțământul utilizatorului și pot fi dezactivate complet de administrator.

Pentru a actualiza aplicația, rulează:

cd /opt/stirling-pdf
docker compose pull
docker compose up -d

Stirling PDF acoperă majoritatea sarcinilor de zi cu zi, dar nu păstrează întotdeauna machetele complexe când convertește între PDF și formate Office. OCR-ul nu recunoaște structura tabelelor și a formulelor, iar calitatea textului scris de mână sau foarte mic este limitată. Pentru rezultate bune, folosește scanări clare cu o rezoluție de aproximativ 300 DPI.

Stirling PDF pe un VPS de la tropic.host

Serviciul nu are nevoie de placă video: memoria RAM, performanța stabilă a procesorului și stocarea rapidă sunt mai importante. Este mai bine să alegi o locație apropiată de utilizatori, deoarece documentele mari sunt încărcate mai întâi pe server și apoi descărcate din nou.

Pentru o instanță personală sau o echipă mică, un VPS Linux cu 2 vCPU și 4 GB RAM este de obicei suficient. Pe un VPS de la tropic.host, poți instala Ubuntu, porni configurația Docker Compose de mai sus și găzdui interfața pe un subdomeniu separat. Memoria suplimentară este deosebit de importantă dacă pe același server rulează și alte containere.

Concluzie

Stirling PDF transformă un VPS într-un serviciu web propriu pentru documente. Reunește zeci de instrumente și suportă OCR, eliminarea reală a datelor confidențiale, compararea versiunilor, scanarea mobilă, automatizarea și un API.

Principalul motiv pentru a-l implementa singur este controlul asupra fișierelor. Pentru contracte, facturi, formulare și documente interne, o instanță protejată cu autentificare și HTTPS este mai convenabilă decât o colecție de convertoare online aleatorii.

FAQ

Stirling PDF este gratuit

Da. Ediția gratuită self-hosted suportă până la cinci utilizatori. Echipele mai mari și organizațiile care au nevoie de funcții enterprise trebuie să folosească o ediție plătită.

Documentele părăsesc serverul meu

În modul self-hosted, acestea sunt procesate de propria instanță Stirling PDF. Nivelul final de securitate depinde de configurația VPS-ului, HTTPS, parole, actualizări și accesul administratorului.

Sunt suficienți 2 GB de RAM

Pentru testare și operațiuni ușoare, da. Pentru utilizare regulată, OCR și conversie, este mai bine să alegi 4 GB RAM, iar pentru sarcini simultane ai nevoie de mai mult.

Este necesar un domeniu

Nu. Serviciul poate fi deschis prin adresa IP sau printr-un tunel SSH. Un domeniu este util pentru o adresă permanentă convenabilă și configurarea corectă a HTTPS.

Este acceptat OCR-ul în limba rusă

Da. Adaugă fișierul rus.traineddata în directorul Tesseract și montează-l în container.