Stirling PDF: como instalar seu próprio editor de PDF em um VPS
Para unir um contrato a um anexo, compactar a digitalização de um passaporte ou ocultar dados bancários, muitas pessoas enviam o documento para o primeiro serviço on-line que encontram. Junto com o arquivo, assinaturas, endereços, faturas e outros dados confidenciais podem ser transmitidos a um site de terceiros.
O Stirling PDF oferece outra abordagem. Trata-se de uma aplicação web com dezenas de ferramentas para PDF que pode ser executada em seu próprio VPS. O painel é aberto no navegador de um computador ou celular, mas os documentos são processados pelo seu servidor.
A seguir, veremos os recursos mais interessantes do Stirling PDF, os requisitos do servidor e a instalação no Ubuntu com Docker Compose, autenticação e HTTPS.
O que é o Stirling PDF
O Stirling PDF é uma plataforma auto-hospedada para editar e processar arquivos PDF. Ela reúne mais de 55 operações: unir e dividir arquivos, reorganizar páginas, compactar, converter, aplicar OCR, adicionar assinaturas e marcas-d’água, comparar documentos e remover metadados e informações confidenciais.
O serviço pode ser usado como aplicativo para desktop, produto em nuvem ou servidor próprio. No modo auto-hospedado, os arquivos são processados pela sua própria instância do Stirling PDF, e o acesso pode ser protegido com senha e HTTPS. A versão gratuita para servidor é destinada a grupos de até cinco usuários; existem edições pagas para equipes maiores e para parte dos recursos corporativos.
A principal diferença em relação a um conversor on-line comum é o controle. Você escolhe o provedor, a localização do servidor, os usuários e as regras de acesso. Ao mesmo tempo, não é preciso procurar um site diferente para cada operação: um único painel substitui vários serviços de compactação, conversão, assinatura e OCR.
Os recursos mais interessantes do Stirling PDF
Trabalho visual com páginas
No modo Multi-Tool, o documento é exibido como uma grade de miniaturas. É possível arrastar, girar, excluir, dividir e inserir páginas na posição desejada, além de exportar apenas as páginas selecionadas. O arquivo é enviado uma única vez, e as alterações podem ser desfeitas e refeitas.
OCR para documentos digitalizados
O OCR adiciona uma camada de texto a um PDF digitalizado. Depois do processamento, é possível pesquisar palavras no documento, selecionar o texto e copiá-lo. Também estão disponíveis o alinhamento de páginas inclinadas, a remoção de ruído e o aumento do contraste. Para o idioma russo, é necessário adicionar separadamente o pacote Tesseract rus.traineddata.
Remoção segura de dados
Um retângulo preto sobre um número de conta nem sempre remove o texto original. A ferramenta Redact consegue excluir as correspondências da estrutura do PDF, em vez de apenas cobri-las com uma camada visual. Você pode marcar uma área manualmente ou pesquisar em todo o documento números de telefone, endereços de e-mail, números de cartão e outros dados usando palavras ou expressões regulares.
Comparação de versões e scanner móvel
O Compare mostra quais palavras foram adicionadas ou removidas entre duas versões de um contrato, relatório ou especificação técnica. Para documentos em papel, há um scanner móvel: um código QR é exibido no computador, o celular envia as fotos diretamente para a sessão atual e os arquivos temporários são excluídos automaticamente após o download ou depois de dez minutos de inatividade.
Automações e API
O Automate funciona como macros para arquivos PDF. Por exemplo, você pode salvar uma vez a seguinte sequência:
OCR → remover páginas em branco → compactar → adicionar marca-d’água → definir uma senha
Depois disso, o mesmo fluxo pode ser aplicado a novos arquivos sem repetir cada etapa. O Stirling PDF também oferece processamento de arquivos de uma pasta monitorada e uma API REST com documentação Swagger integrada.
Qual VPS é necessário para o Stirling PDF
O processamento de um PDF pode exigir muito mais memória do que o espaço ocupado pelo arquivo original. OCR, transformação de páginas em imagens e conversão de documentos de escritório por meio do LibreOffice consomem especialmente muitos recursos.
Para uma instalação de teste, 2 GB de RAM são suficientes, mas, para uso contínuo, é melhor considerar:
- 2 vCPU;
- 4 GB de RAM;
- pelo menos 10–20 GB de espaço livre em SSD ou NVMe;
- Ubuntu 22.04 ou 24.04.
Se vários usuários executarem OCR ou conversões ao mesmo tempo, é mais adequado escolher 4 vCPU e 8 GB de RAM. Para servidores menos potentes, existe a imagem latest-ultra-lite, enquanto a latest-fat inclui fontes e ferramentas adicionais para conversões de melhor qualidade. A imagem padrão latest atende à maioria dos usuários.
Instalação do Stirling PDF com Docker Compose
Na configuração abaixo, o contêiner escuta apenas na interface local. O acesso externo será feito posteriormente pelo Nginx com HTTPS, portanto a porta 8080 não ficará exposta para toda a internet.
Etapa 1. Instale o 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.shVerifique a instalação:
docker --version
docker compose versionEtapa 2. Crie a configuração do Docker Compose
mkdir -p /opt/stirling-pdf/{configs,logs,pipeline}
cd /opt/stirling-pdf
nano docker-compose.ymlAdicione a configuração:
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=falseInicie o serviço:
docker compose up -d
docker compose psPara diagnóstico, use:
docker compose logs --tail=100 stirling-pdfEtapa 3. Faça o primeiro acesso
Antes de configurar o domínio, abra o painel por meio de um túnel SSH. O comando deve ser executado em seu computador:
ssh -L 8080:127.0.0.1:8080 root@SERVER_IPAcesse http://localhost:8080. Os dados padrão do primeiro acesso são o usuário admin e a senha stirling. Altere a senha imediatamente nas configurações da conta.
Conexão do domínio e do HTTPS
Crie um registro DNS do tipo A para um endereço como pdf.example.com e direcione-o ao IP do servidor. Em seguida, instale o Nginx e o Certbot:
apt install -y nginx certbot python3-certbot-nginx
nano /etc/nginx/sites-available/stirling-pdfAdicione a configuração substituindo o domínio:
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;
}
}Ative o site e obtenha o certificado:
ln -s /etc/nginx/sites-available/stirling-pdf /etc/nginx/sites-enabled/stirling-pdf
nginx -t
systemctl reload nginx
certbot --nginx -d pdf.example.comAgora o Stirling PDF está disponível por HTTPS, enquanto a porta interna 8080 permanece fechada. Para arquivos maiores que 500 MB, aumente o valor de client_max_body_size.
Como adicionar OCR em russo
Crie um diretório e baixe os pacotes Tesseract em inglês e russo:
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.traineddataAdicione a seguinte linha à seção volumes do arquivo docker-compose.yml:
- ./tessdata:/usr/share/tessdataAplique as alterações e verifique os idiomas disponíveis:
docker compose up -d
docker exec stirling-pdf tesseract --list-langsA lista deve incluir eng e rus.
Segurança, atualizações e limitações
Antes do uso contínuo, altere a senha padrão, mantenha a autenticação ativada, não exponha a porta 8080 e permita no firewall apenas SSH, HTTP e HTTPS. É recomendável incluir os diretórios configs e pipeline nos backups. A análise do Stirling PDF só é ativada após o consentimento do usuário e pode ser completamente desativada pelo administrador.
A atualização é feita da seguinte forma:
cd /opt/stirling-pdf
docker compose pull
docker compose up -dO Stirling PDF atende à maioria das tarefas cotidianas, mas nem sempre preserva layouts complexos durante a conversão entre PDF e formatos de escritório. O OCR não reconhece a estrutura de tabelas e fórmulas, e a qualidade de reconhecimento de textos manuscritos ou muito pequenos é limitada. Para obter um bom resultado, é recomendável usar digitalizações nítidas com resolução próxima de 300 DPI.
Stirling PDF em um VPS da tropic.host
O serviço não precisa de placa de vídeo: RAM, desempenho estável do processador e armazenamento rápido são mais importantes. É melhor escolher uma localização próxima dos usuários, pois documentos grandes são primeiro enviados ao servidor e depois baixados novamente.
Para uma instância pessoal ou uma equipe pequena, um VPS Linux com 2 vCPU e 4 GB de RAM costuma ser suficiente. Em um VPS da tropic.host, você pode instalar o Ubuntu, executar o Docker Compose apresentado acima e hospedar o painel em um subdomínio separado. Uma reserva de memória é especialmente importante se outros contêineres estiverem funcionando no mesmo servidor.
Conclusão resumida
O Stirling PDF transforma um VPS em seu próprio serviço web para documentos. Ele reúne dezenas de ferramentas e oferece OCR, remoção efetiva de dados confidenciais, comparação de versões, digitalização móvel, automações e API.
O principal motivo para implantá-lo por conta própria é manter o controle sobre os arquivos. Para contratos, faturas, formulários e documentos internos, uma instância protegida com autenticação e HTTPS é mais conveniente do que um conjunto de conversores on-line escolhidos ao acaso.
FAQ
O Stirling PDF é gratuito?
Sim. A versão gratuita auto-hospedada é destinada a, no máximo, cinco usuários. Equipes maiores e organizações que precisam de recursos corporativos necessitam de uma edição paga.
Os documentos saem do meu servidor?
No modo auto-hospedado, eles são processados pela sua própria instância do Stirling PDF. A segurança final depende da configuração do VPS, do HTTPS, das senhas, das atualizações e do acesso dos administradores.
2 GB de RAM são suficientes?
Para testes e operações leves, sim. Para uso contínuo, OCR e conversões, é melhor escolher 4 GB de RAM; para cargas simultâneas, será necessário mais.
É necessário ter um domínio?
Não. O serviço pode ser aberto pelo endereço IP ou por meio de um túnel SSH. O domínio é útil para ter um endereço permanente e conveniente e configurar o HTTPS corretamente.
O OCR em russo é compatível?
Sim. É necessário adicionar o arquivo rus.traineddata ao diretório do Tesseract e montá-lo no contêiner.
