Language: ru
Stirling PDF: как установить собственный редактор PDF на VPS
Чтобы объединить договор с приложением, сжать скан паспорта или скрыть платёжные реквизиты, многие загружают документ в первый попавшийся онлайн-сервис. Вместе с файлом на сторонний сайт могут попасть подписи, адреса, счета и другие конфиденциальные данные.
Stirling PDF предлагает другой подход. Это веб-приложение с десятками инструментов для работы с PDF, которое можно запустить на собственном VPS. Интерфейс открывается в браузере компьютера или телефона, а документы обрабатываются вашим сервером.
Ниже рассмотрим наиболее интересные возможности Stirling PDF, требования к серверу и установку на Ubuntu с Docker Compose, аутентификацией и HTTPS.
Что такое Stirling PDF
Stirling PDF — платформа для самостоятельного размещения, редактирования и обработки PDF-файлов. Она объединяет более 55 операций: объединение и разделение файлов, изменение порядка страниц, сжатие, конвертацию, OCR, подписи, водяные знаки, сравнение документов, удаление метаданных и конфиденциальной информации.
Сервис можно использовать как настольное приложение, облачный продукт или собственный сервер. В режиме самостоятельного размещения файлы обрабатываются вашим экземпляром 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. Для маломощного сервера доступен образ latest-ultra-lite, а latest-fat включает дополнительные шрифты и инструменты для более качественной конвертации. Стандартный образ 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, стабильная производительность CPU и быстрое хранилище. Лучше выбрать расположение сервера ближе к пользователям, потому что большие документы сначала загружаются на сервер, а затем скачиваются обратно.
Для личного экземпляра или небольшой команды обычно достаточно Linux VPS с 2 vCPU и 4 GB RAM. На VPS от tropic.host можно установить Ubuntu, запустить приведённую выше конфигурацию Docker Compose и разместить интерфейс на отдельном поддомене. Дополнительная память особенно важна, если на том же сервере работают другие контейнеры.
Заключение
Stirling PDF превращает VPS в собственный веб-сервис для работы с документами. Он объединяет десятки инструментов и поддерживает OCR, настоящее удаление конфиденциальных данных, сравнение версий, мобильное сканирование, автоматизацию и API.
Главная причина развернуть сервис самостоятельно — контроль над файлами. Для договоров, счетов, форм и внутренних документов защищённый экземпляр с аутентификацией и HTTPS удобнее, чем набор случайных онлайн-конвертеров.
FAQ
Stirling PDF бесплатен?
Да. Бесплатная версия для самостоятельного размещения поддерживает до пяти пользователей. Для больших команд и организаций, которым нужны корпоративные функции, требуется платная редакция.
Покидают ли документы мой сервер?
В режиме самостоятельного размещения они обрабатываются вашим экземпляром Stirling PDF. Итоговый уровень безопасности зависит от конфигурации VPS, HTTPS, паролей, обновлений и доступа администратора.
Достаточно ли 2 GB RAM?
Для тестирования и простых операций — да. Для регулярной работы, OCR и конвертации лучше выбрать 4 GB RAM, а при параллельной нагрузке — ещё больше.
Нужен ли домен?
Нет. Сервис можно открыть по IP-адресу или через SSH-туннель. Домен удобен для постоянного адреса и корректной настройки HTTPS.
Поддерживается ли русский OCR?
Да. Добавьте файл rus.traineddata в каталог Tesseract и подключите его к контейнеру.
