Tropic Host

Stirling PDF em um VPS: instalação do seu próprio editor de PDF

7 min de leitura
Tropic
Stirling PDF em um VPS: instalação do seu próprio editor de PDF

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

Verifique a instalação:

docker --version
docker compose version

Etapa 2. Crie a configuração do Docker Compose

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

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

Inicie o serviço:

docker compose up -d
docker compose ps

Para diagnóstico, use:

docker compose logs --tail=100 stirling-pdf

Etapa 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_IP

Acesse 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-pdf

Adicione 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.com

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

Adicione a seguinte linha à seção volumes do arquivo docker-compose.yml:

      - ./tessdata:/usr/share/tessdata

Aplique as alterações e verifique os idiomas disponíveis:

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

A 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 -d

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