Language: bg
Stirling PDF: как да инсталирате собствен PDF редактор на VPS
За да обединят договор с приложение, да компресират сканиран паспорт или да скрият платежни данни, много хора качват документа в първата онлайн услуга, която намерят. Заедно с файла към сайт на трета страна могат да бъдат изпратени подписи, адреси, фактури и друга поверителна информация.
Stirling PDF предлага различен подход. Това е уеб приложение с десетки инструменти за PDF, което можете да стартирате на собствен VPS. Интерфейсът се отваря в браузър на компютър или телефон, а вашият сървър обработва документите.
По-долу ще разгледаме най-интересните функции на Stirling PDF, изискванията към сървъра и как да го инсталирате на Ubuntu с Docker Compose, удостоверяване и HTTPS.
Какво е Stirling PDF?
Stirling PDF е self-hosted платформа за редактиране и обработка на PDF файлове. Тя обединява повече от 55 операции: обединяване и разделяне на файлове, пренареждане на страници, компресиране, конвертиране, OCR, подписи, водни знаци, сравнение на документи и премахване на метаданни и поверителна информация.
Услугата може да се използва като настолно приложение, облачен продукт или self-hosted сървър. В 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, преобразуването на страници в изображения и конвертирането на офис документи чрез 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. За слаб сървър има image latest-ultra-lite, а latest-fat включва допълнителни шрифтове и инструменти за по-качествено конвертиране. Стандартният image latest е подходящ за повечето потребители.
Инсталиране на Stirling PDF с Docker Compose
В конфигурацията по-долу контейнерът слуша само на локалния интерфейс. По-късно външният достъп ще минава през Nginx с HTTPS, така че порт 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
Създайте DNS запис от тип A за адрес като 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Добавете следния ред в секцията volumes на файла docker-compose.yml:
- ./tessdata:/usr/share/tessdataПриложете промените и проверете наличните езици:
docker compose up -d
docker exec stirling-pdf tesseract --list-langsСписъкът трябва да включва eng и rus.
Сигурност, актуализации и ограничения
Преди редовна употреба сменете паролата по подразбиране, оставете удостоверяването включено, не излагайте порт 8080 и разрешете само SSH, HTTP и HTTPS през защитната стена. Директориите configs и pipeline трябва да влизат в резервните копия. Аналитиката на Stirling PDF се активира само след съгласие на потребителя и може да бъде напълно изключена от администратора.
За да актуализирате приложението, изпълнете:
cd /opt/stirling-pdf
docker compose pull
docker compose up -dStirling PDF покрива повечето ежедневни задачи, но не винаги запазва сложни оформления при конвертиране между PDF и офис формати. OCR не разпознава структурата на таблици и формули, а качеството при ръкописен или много дребен текст е ограничено. За добри резултати използвайте ясни сканирания с резолюция около 300 DPI.
Stirling PDF на VPS от tropic.host
Услугата не изисква графична карта: по-важни са RAM, стабилната производителност на процесора и бързото хранилище. По-добре е да изберете локация близо до потребителите, защото големите документи първо се качват на сървъра, а след това отново се изтеглят.
За лична инстанция или малък екип обикновено е достатъчен Linux VPS с 2 vCPU и 4 GB RAM. На VPS от tropic.host можете да инсталирате Ubuntu, да стартирате показаната конфигурация на Docker Compose и да хоствате интерфейса на отделен поддомейн. Допълнителната памет е особено важна, ако на същия сървър работят други контейнери.
Заключение
Stirling PDF превръща VPS в собствена уеб услуга за документи. Той обединява десетки инструменти и поддържа OCR, действително премахване на поверителни данни, сравнение на версии, мобилно сканиране, автоматизация и API.
Основната причина да го внедрите сами е контролът върху файловете. За договори, фактури, формуляри и вътрешни документи защитена инстанция с удостоверяване и HTTPS е по-удобна от набор случайни онлайн конвертори.
FAQ
Безплатен ли е Stirling PDF?
Да. Безплатното self-hosted издание поддържа до петима потребители. За по-големи екипи и организации, които се нуждаят от корпоративни функции, е необходимо платено издание.
Напускат ли документите моя сървър?
В self-hosted режим те се обработват от вашата собствена инстанция на Stirling PDF. Крайното ниво на сигурност зависи от конфигурацията на VPS, HTTPS, паролите, актуализациите и администраторския достъп.
Достатъчни ли са 2 GB RAM?
За тестове и леки операции — да. За редовна употреба, OCR и конвертиране е по-добре да изберете 4 GB RAM, а за едновременни задачи — повече.
Необходим ли е домейн?
Не. Услугата може да се отвори по IP адрес или през SSH тунел. Домейнът е удобен за постоянен адрес и правилна HTTPS конфигурация.
Поддържа ли се руски OCR?
Да. Добавете файла rus.traineddata в директорията на Tesseract и го монтирайте в контейнера.
