Tropic Host

Stirling PDF VPS-ზე: საკუთარი PDF რედაქტორის ინსტალაცია

2 წაკითხვის წთ
Tropic
Stirling PDF VPS-ზე: საკუთარი PDF რედაქტორის ინსტალაცია

Language: ka

Stirling PDF: როგორ დავაყენოთ საკუთარი PDF რედაქტორი VPS-ზე

კონტრაქტისა და დანართის გასაერთიანებლად, პასპორტის სკანის დასაკომპრესირებლად ან გადახდის მონაცემების დასაფარად ბევრი ადამიანი დოკუმენტს პირველივე ონლაინ-სერვისში ტვირთავს, რომელსაც იპოვის. ფაილთან ერთად მესამე მხარის საიტზე შეიძლება გაიგზავნოს ხელმოწერები, მისამართები, ანგარიშ-ფაქტურები და სხვა კონფიდენციალური მონაცემებიც.

Stirling PDF განსხვავებულ მიდგომას გვთავაზობს. ეს არის web-აპლიკაცია PDF-ის ათეულობით ხელსაწყოთი, რომლის გაშვებაც საკუთარ VPS-ზე შეგიძლიათ. ინტერფეისი კომპიუტერის ან ტელეფონის ბრაუზერში იხსნება, დოკუმენტებს კი თქვენი სერვერი ამუშავებს.

ქვემოთ განვიხილავთ Stirling PDF-ის ყველაზე საინტერესო შესაძლებლობებს, სერვერის მოთხოვნებს და მის ინსტალაციას Ubuntu-ზე Docker Compose-ის, ავთენტიფიკაციისა და HTTPS-ის გამოყენებით.

რა არის Stirling PDF?

Stirling PDF არის თვითჰოსტინგის პლატფორმა PDF ფაილების რედაქტირებისა და დამუშავებისთვის. ის აერთიანებს 55-ზე მეტ ოპერაციას: ფაილების გაერთიანებასა და დაყოფას, გვერდების გადალაგებას, შეკუმშვას, კონვერტაციას, OCR-ს, ხელმოწერებს, წყლის ნიშნებს, დოკუმენტების შედარებას და მეტამონაცემებისა და კონფიდენციალური ინფორმაციის წაშლას.

სერვისი შეგიძლიათ გამოიყენოთ დესკტოპის აპლიკაციად, cloud-პროდუქტად ან თვითჰოსტინგის სერვერად. self-hosted რეჟიმში ფაილებს თქვენი Stirling PDF-ის ინსტანცია ამუშავებს, წვდომა კი პაროლითა და HTTPS-ით შეიძლება დაიცვათ. უფასო სერვერული გამოცემა ხუთამდე მომხმარებლის ჯგუფებისთვისაა განკუთვნილი; უფრო დიდი გუნდებისა და ზოგიერთი კორპორაციული ფუნქციისთვის ფასიანი გამოცემებია ხელმისაწვდომი.

ჩვეულებრივ ონლაინ-კონვერტერთან შედარებით მთავარი განსხვავება კონტროლია. თქვენ ირჩევთ პროვაიდერს, სერვერის ადგილმდებარეობას, მომხმარებლებსა და წვდომის წესებს. ამასთან, თითოეული ოპერაციისთვის ცალკე საიტის ძებნა აღარ გჭირდებათ: ერთი ინტერფეისი ცვლის შეკუმშვის, კონვერტაციის, ხელმოწერისა და OCR-ის სერვისების კრებულს.

Stirling PDF-ის ყველაზე საინტერესო შესაძლებლობები

გვერდების ვიზუალური მართვა

Multi-Tool რეჟიმში დოკუმენტი მინიატურების ბადის სახით ჩანს. გვერდების გადაადგილება, მოტრიალება და წაშლა, დოკუმენტის დაყოფა, საჭირო ადგილას ჩასმა და მხოლოდ არჩეული გვერდების ექსპორტი შეგიძლიათ. ფაილი მხოლოდ ერთხელ იტვირთება, ცვლილებების გაუქმება და ხელახლა შესრულებაც მხარდაჭერილია.

OCR დასკანერებული დოკუმენტებისთვის

OCR დასკანერებულ PDF-ს ტექსტურ ფენას უმატებს. დამუშავების შემდეგ დოკუმენტში სიტყვების ძებნა, ტექსტის მონიშვნა და კოპირება შეგიძლიათ. ხელმისაწვდომია დახრის გასწორება, ხმაურის მოცილება და კონტრასტის გაუმჯობესებაც. რუსული ენისთვის Tesseract-ის პაკეტი rus.traineddata ცალკე უნდა დაამატოთ.

მონაცემების უსაფრთხო რედაქტირება

ანგარიშის ნომერზე დადებული შავი მართკუთხედი ორიგინალ ტექსტს ყოველთვის არ შლის. Redact ინსტრუმენტს შეუძლია შესაბამისობები PDF-ის სტრუქტურიდან წაშალოს და მხოლოდ ვიზუალური ფენით არ დაფაროს. შეგიძლიათ უბანი ხელით მონიშნოთ ან მთელ დოკუმენტში მოძებნოთ ტელეფონის ნომრები, ელფოსტის მისამართები, ბარათის ნომრები და სხვა მონაცემები სიტყვებით ან რეგულარული გამოსახულებებით.

ვერსიების შედარება და მობილური სკანერი

Compare აჩვენებს, რომელი სიტყვები დაემატა ან წაიშალა კონტრაქტის, ანგარიშის ან ტექნიკური სპეციფიკაციის ორ ვერსიას შორის. ქაღალდის დოკუმენტებისთვის მობილური სკანერიც არსებობს: კომპიუტერზე QR-კოდი ჩნდება, ტელეფონი ფოტოებს პირდაპირ მიმდინარე სესიაში ტვირთავს, დროებითი ფაილები კი ჩამოტვირთვის შემდეგ ან ათი წუთის უმოქმედობისას ავტომატურად იშლება.

ავტომატიზაცია და API

Automate PDF ფაილებისთვის მაკროს მსგავსად მუშაობს. მაგალითად, შეგიძლიათ ერთხელ შეინახოთ შემდეგი სამუშაო პროცესი:

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

შემდეგ იგივე პროცესი ახალ ფაილებზე ყველა ნაბიჯის გამეორების გარეშე გამოიყენება. Stirling PDF ასევე მხარს უჭერს ფაილების დამუშავებას მონიტორინგის ქვეშ მყოფი საქაღალდიდან და გთავაზობთ REST API-ს ჩაშენებული Swagger დოკუმენტაციით.

როგორი VPS სჭირდება Stirling PDF-ს?

PDF-ის დამუშავებას შეიძლება წყაროს ფაილის ზომაზე გაცილებით მეტი მეხსიერება დასჭირდეს. განსაკუთრებით ბევრ რესურსს მოითხოვს OCR, გვერდების სურათებად გადაყვანა და Office დოკუმენტების LibreOffice-ით კონვერტაცია.

საცდელი განთავსებისთვის 2 GB RAM საკმარისია, თუმცა რეგულარული გამოყენებისთვის უკეთესია აირჩიოთ:

  • 2 vCPU;
  • 4 GB RAM;
  • მინიმუმ 10–20 GB თავისუფალი ადგილი SSD ან NVMe დისკზე;
  • Ubuntu 22.04 ან 24.04.

თუ რამდენიმე მომხმარებელი ერთდროულად გაუშვებს OCR-ს ან კონვერტაციას, უფრო გონივრულია 4 vCPU-ისა და 8 GB RAM-ის არჩევა. სუსტი სერვერისთვის არსებობს latest-ultra-lite იმიჯი, ხოლო latest-fat დამატებით შრიფტებსა და ხელსაწყოებს შეიცავს უკეთესი ხარისხის კონვერტაციისთვის. სტანდარტული latest იმიჯი მომხმარებლების უმეტესობას შეეფერება.

Stirling PDF-ის ინსტალაცია Docker Compose-ით

ქვემოთ მოცემულ კონფიგურაციაში კონტეინერი მხოლოდ ლოკალურ ინტერფეისზე უსმენს. გარე წვდომა მოგვიანებით HTTPS-ით დაცული Nginx-ის გავლით იქნება, ამიტომ 8080 პორტი მთელ ინტერნეტში არ გამოჩნდება.

ნაბიჯი 1. 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

შეამოწმეთ ინსტალაცია:

docker --version
docker compose version

ნაბიჯი 2. Docker Compose-ის კონფიგურაციის შექმნა

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

დაამატეთ კონფიგურაცია:

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

გაუშვით სერვისი:

docker compose up -d
docker compose ps

დიაგნოსტიკისთვის გამოიყენეთ:

docker compose logs --tail=100 stirling-pdf

ნაბიჯი 3. პირველი შესვლა

დომენის კონფიგურაციამდე ინტერფეისი SSH-გვირაბით გახსენით. ბრძანება თქვენს კომპიუტერზე გაუშვით:

ssh -L 8080:127.0.0.1:8080 root@SERVER_IP

გადადით მისამართზე http://localhost:8080. პირველი შესვლის ნაგულისხმევი მონაცემებია მომხმარებლის სახელი admin და პაროლი stirling. პაროლი დაუყოვნებლივ შეცვალეთ ანგარიშის პარამეტრებში.

დომენისა და HTTPS-ის დაკავშირება

შექმენით A ტიპის DNS ჩანაწერი ისეთი მისამართისთვის, როგორიცაა pdf.example.com, და ის სერვერის IP მისამართზე მიუთითეთ. შემდეგ დააყენეთ Nginx და Certbot:

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

დაამატეთ კონფიგურაცია და შეცვალეთ დომენის სახელი:

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

გაააქტიურეთ საიტი და მიიღეთ სერტიფიკატი:

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 HTTPS-ით არის ხელმისაწვდომი, ხოლო შიდა 8080 პორტი დახურული რჩება. 500 MB-ზე დიდი ფაილებისთვის გაზარდეთ client_max_body_size.

რუსული OCR-ის დამატება

შექმენით საქაღალდე და ჩამოტვირთეთ Tesseract-ის ინგლისური და რუსული პაკეტები:

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

docker-compose.yml ფაილის volumes სექციაში დაამატეთ შემდეგი ხაზი:

      - ./tessdata:/usr/share/tessdata

გამოიყენეთ ცვლილებები და შეამოწმეთ ხელმისაწვდომი ენები:

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

სიაში უნდა შედიოდეს eng და rus.

უსაფრთხოება, განახლებები და შეზღუდვები

რეგულარულ გამოყენებამდე შეცვალეთ ნაგულისხმევი პაროლი, ჩართული დატოვეთ ავთენტიფიკაცია, არ გამოაჩინოთ 8080 პორტი და firewall-ის გავლით მხოლოდ SSH, HTTP და HTTPS დაუშვით. configs და pipeline საქაღალდეები სარეზერვო ასლებში უნდა შეიტანოთ. Stirling PDF-ის ანალიტიკა მხოლოდ მომხმარებლის თანხმობის შემდეგ ირთვება და ადმინისტრატორს მისი სრულად გამორთვა შეუძლია.

აპლიკაციის გასაახლებლად გაუშვით:

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

Stirling PDF ყოველდღიური ამოცანების უმეტესობას უმკლავდება, თუმცა PDF-სა და Office ფორმატებს შორის კონვერტაციისას რთულ განლაგებას ყოველთვის ვერ ინარჩუნებს. OCR ვერ ცნობს ცხრილებისა და ფორმულების სტრუქტურას, ხელნაწერი ან ძალიან პატარა ტექსტის ხარისხი კი შეზღუდულია. კარგი შედეგისთვის გამოიყენეთ მკაფიო, დაახლოებით 300 DPI-ის გარჩევადობის სკანები.

Stirling PDF tropic.host-ის VPS-ზე

სერვისს გრაფიკული ბარათი არ სჭირდება: უფრო მნიშვნელოვანია RAM, CPU-ის სტაბილური წარმადობა და სწრაფი საცავი. უმჯობესია აირჩიოთ მომხმარებლებთან ახლოს მდებარე რეგიონი, რადგან დიდი დოკუმენტები ჯერ სერვერზე იტვირთება და შემდეგ ისევ ჩამოიტვირთება.

პირადი ინსტანციისთვის ან პატარა გუნდისთვის, როგორც წესი, საკმარისია Linux VPS 2 vCPU-ითა და 4 GB RAM-ით. tropic.host-ის VPS-ზე შეგიძლიათ დააყენოთ Ubuntu, გაუშვათ ზემოთ ნაჩვენები Docker Compose-ის კონფიგურაცია და ინტერფეისი ცალკე subdomain-ზე განათავსოთ. დამატებითი მეხსიერება განსაკუთრებით მნიშვნელოვანია, თუ იმავე სერვერზე სხვა კონტეინერებიც მუშაობს.

დასკვნა

Stirling PDF VPS-ს დოკუმენტებისთვის საკუთარ web-სერვისად აქცევს. ის აერთიანებს ათეულობით ხელსაწყოს და მხარს უჭერს OCR-ს, კონფიდენციალური მონაცემების ნამდვილ წაშლას, ვერსიების შედარებას, მობილურ სკანირებას, ავტომატიზაციასა და API-ს.

თვითგანთავსების მთავარი მიზეზი ფაილებზე კონტროლია. კონტრაქტებისთვის, ანგარიშ-ფაქტურებისთვის, ფორმებისა და შიდა დოკუმენტებისთვის ავთენტიფიკაციითა და HTTPS-ით დაცული ინსტანცია უფრო მოსახერხებელია, ვიდრე შემთხვევითი ონლაინ-კონვერტერების კრებული.

FAQ

Stirling PDF უფასოა?

დიახ. უფასო თვითჰოსტინგის გამოცემა ხუთამდე მომხმარებელს უჭერს მხარს. უფრო დიდ გუნდებსა და კორპორაციული ფუნქციების საჭიროების მქონე ორგანიზაციებს ფასიანი გამოცემა სჭირდებათ.

ტოვებს დოკუმენტები ჩემს სერვერს?

self-hosted რეჟიმში მათ თქვენი Stirling PDF-ის ინსტანცია ამუშავებს. უსაფრთხოების საბოლოო დონე VPS-ის კონფიგურაციაზე, HTTPS-ზე, პაროლებზე, განახლებებსა და ადმინისტრატორის წვდომაზეა დამოკიდებული.

საკმარისია 2 GB RAM?

ტესტირებისა და მსუბუქი ოპერაციებისთვის — დიახ. რეგულარული გამოყენების, OCR-ისა და კონვერტაციისთვის უმჯობესია 4 GB RAM, ხოლო ერთდროული დატვირთვისას — მეტი.

აუცილებელია დომენი?

არა. სერვისი IP მისამართით ან SSH-გვირაბითაც იხსნება. დომენი მოსახერხებელი მუდმივი მისამართისა და HTTPS-ის სწორი კონფიგურაციისთვისაა სასარგებლო.

მხარდაჭერილია რუსული OCR?

დიახ. დაამატეთ rus.traineddata ფაილი Tesseract-ის საქაღალდეში და დაამაუნთეთ ის კონტეინერში.