Hosting IronSecureDoc on Linux Using C#

This article was translated from English: Does it need improvement?
Translated
View the article in English
IronSecureDoc on Docker

IronSecureDoc é um contêiner Docker projetado para fornecer manipulação avançada de PDFs por meio de uma API REST simples, sem a complexidade e a sobrecarga dos serviços SaaS online. Este guia irá orientá-lo passo a passo na configuração do IronSecureDoc em sua máquina, incluindo a configuração de variáveis ​​de ambiente e um exemplo básico de uso da API REST. Para obter a API completa, consulte nossa Referência da API REST .

docker pull ironsoftwareofficial/ironsecuredoc:latest
docker pull ironsoftwareofficial/ironsecuredoc:latest
SHELL

Pré-requisitos

AvisoDocker Desktop no Linux executa uma Máquina Virtual (VM) que cria e utiliza um contexto docker personalizado, desktop-linux, na inicialização.

Isso significa que as imagens e os contêineres implantados no Docker Engine para Linux (antes da instalação) não estão disponíveis no Docker Desktop para Linux.

Plataformas

Guia passo a passo

1. Instale o Docker Desktop

Se você ainda não instalou o Docker Desktop, siga estes passos:

  1. Acesse a página de download do Docker Desktop .
  2. Baixe o instalador do Docker Desktop para Linux.
  3. Execute o instalador e siga as instruções na tela.
  4. Após a instalação, inicie o Docker Desktop e verifique se ele está em execução.

2. Baixe a imagem Docker "IronSecureDoc".

Abra um prompt de comando e baixe a imagem mais recente do IronSecureDoc do Docker Hub:

docker pull ironsoftwareofficial/ironsecuredoc:latest
docker pull ironsoftwareofficial/ironsecuredoc:latest
SHELL

3. Execute o contêiner sem certificado

Execute o contêiner Docker com as variáveis ​​de ambiente necessárias:

Swagger UI in Browser
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
SHELL

Aplique uma versão de avaliação ou chave de licença para remover as marcas d'água.

Pontas
Substitua <IRONSECUREDOC_LICENSE_KEY> pela sua chave de licença do IronSecureDoc real. Caso contrário, uma marca d'água será aplicada aos recursos corporativos.

Swagger UI in Browser

)}]

4. Acesse o contêiner

Após a execução do contêiner, você poderá acessar o IronSecureDoc abrindo um navegador da web e navegando até:

http://localhost:8080/swagger/index.html
Swagger UI in Browser

Você deverá ver a interface do IronSecureDoc, indicando que seu contêiner está sendo executado com sucesso.

5. Execute o contêiner IronSecureDoc com certificado.

Se precisar executar o contêiner com um certificado, siga estas etapas para gerar o certificado e configurar a máquina local:

  1. Gerar certificado :

    dotnet dev-certs https -ep $HOME/.aspnet/https/ironsecuredoc.pfx -p <CREDENTIAL_PLACEHOLDER>
    dotnet dev-certs https --trust
    dotnet dev-certs https -ep $HOME/.aspnet/https/ironsecuredoc.pfx -p <CREDENTIAL_PLACEHOLDER>
    dotnet dev-certs https --trust
    SHELL

    Substitua <CREDENTIAL_PLACEHOLDER> por uma senha.

  2. Execute o contêiner Docker :

    docker container run -d -p 8081:8081 -p 8080:8080 \
    -e HTTP_PORTS=8080 -e HTTPS_PORTS=8081 \
    -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
    -e ENVIRONMENT=Production \
    -v $HOME/.aspnet/https:/https:ro \
    -e CERTIFICATE_PATH=$HOME/.aspnet/https/ironsecuredoc.pfx \
    -e CERTIFICATE_PASSWORD=<CERTIFICATE_PASSWORD> \
    ironsoftwareofficial/ironsecuredoc:latest
    docker container run -d -p 8081:8081 -p 8080:8080 \
    -e HTTP_PORTS=8080 -e HTTPS_PORTS=8081 \
    -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
    -e ENVIRONMENT=Production \
    -v $HOME/.aspnet/https:/https:ro \
    -e CERTIFICATE_PATH=$HOME/.aspnet/https/ironsecuredoc.pfx \
    -e CERTIFICATE_PASSWORD=<CERTIFICATE_PASSWORD> \
    ironsoftwareofficial/ironsecuredoc:latest
    SHELL

    Substitua <IRONSECUREDOC_LICENSE_KEY> e <CERTIFICATE_PASSWORD> pela sua chave de licença do IronSecureDoc real e senha do certificado, respectivamente.

6. Gerenciando o Contêiner

Você pode gerenciar seu contêiner em execução usando comandos do Docker. Aqui estão alguns comandos úteis:

  • Pare o contêiner :

    docker stop <container_id>
    docker stop <container_id>
    SHELL
  • Iniciar o contêiner :

    docker start <container_id>
    docker start <container_id>
    SHELL
  • Remova o recipiente :

    docker rm -f <container_id>
    docker rm -f <container_id>
    SHELL

Substitua <container_id> pelo ID ou nome real do contêiner.

Variáveis ​​de ambiente

O contêiner pode ser configurado usando as seguintes variáveis ​​de ambiente:

  • PDF_MAX_SIZE_MB (Padrão: 30): Define o tamanho máximo permitido para o upload de arquivos PDF em Megabytes.
  • REQUEST_TIMEOUT_SECONDS (Padrão: 5): Define a duração do tempo limite em segundos para solicitações de API. O valor -1 permite que as solicitações sejam executadas indefinidamente.
  • ALLOWED_ORIGINS: Configura o Compartilhamento de Recursos de Origem Cruzada (CORS) especificando URLs de origem permitidas. Separe vários URLs com vírgulas. Use * ou "todos" para permitir solicitações de qualquer origem.
  • HTTP_PORTS: Define as portas HTTP que o contêiner expõe. Isto deve corresponder ao mapeamento de portas usando a flag -p (por exemplo, 8080). Separe várias portas com um ponto e vírgula (;).
  • HTTPS_PORTS: Define as portas HTTPS que o contêiner expõe. Isto deve corresponder ao mapeamento de portas usando a flag -p (por exemplo, 8081). Separe várias portas com um ponto e vírgula (;).
  • IronSecureDoc_LicenseKey (Obrigatório): Define a chave de licença do IronSecureDoc. Importante: Não compartilhe esse valor publicamente.

Exemplo básico: Redigir texto em um documento

Para obter a lista completa de endpoints da API, consulte a Referência completa da API REST .

Redigir texto

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-text' \
   -H 'accept: */*' \
   -H 'Content-Type: multipart/form-data' \
   -F 'pdf_file=@/path/to/your/document.pdf;type=application/pdf' \
   -F 'words_to_redact="sensitiveWord"' \
   -F 'draw_black_box=true' \
   -F 'match_whole_word=true' \
   -F 'match_case=true'
curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-text' \
   -H 'accept: */*' \
   -H 'Content-Type: multipart/form-data' \
   -F 'pdf_file=@/path/to/your/document.pdf;type=application/pdf' \
   -F 'words_to_redact="sensitiveWord"' \
   -F 'draw_black_box=true' \
   -F 'match_whole_word=true' \
   -F 'match_case=true'
SHELL

Substitua /path/to/your/document.pdf pelo caminho real para o documento que você deseja redigir e sensitiveWord pela palavra que você deseja redigir.

Redigir expressão regular

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-regular-expression' \
   -H 'accept: */*' \
   -H 'Content-Type: multipart/form-data' \
   -F 'pdf_file=@/path/to/your/document.pdf;type=application/pdf' \
   -F 'regular_expression="[0-9]"' \
   -F 'draw_black_box=true'
curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-regular-expression' \
   -H 'accept: */*' \
   -H 'Content-Type: multipart/form-data' \
   -F 'pdf_file=@/path/to/your/document.pdf;type=application/pdf' \
   -F 'regular_expression="[0-9]"' \
   -F 'draw_black_box=true'
SHELL

Substitua /path/to/your/document.pdf pelo caminho real para o documento que você deseja redigir e [0-9] pela expressão regular que você deseja coincidir e redigir.

Conclusão

Você hospedou com sucesso o IronSecureDoc em sua máquina e o configurou com as variáveis ​​de ambiente necessárias. Você também aprendeu como interagir com a API REST do IronSecureDoc usando o cURL para operações básicas e avançadas. Para obter mais detalhes sobre configuração e utilização, consulte a Referência completa da API REST .

Perguntas frequentes

O que é o IronSecureDoc e como ele funciona?

IronSecureDoc é um contêiner Docker que oferece manipulação avançada de PDFs por meio de uma API REST, permitindo a segurança de documentos offline sem depender de serviços SaaS.

Quais são os requisitos para configurar o IronSecureDoc em um servidor Linux?

Para configurar o IronSecureDoc em um servidor Linux, certifique-se de que o Docker Desktop esteja instalado em sua distribuição Linux, como Ubuntu, Debian, Fedora ou Red Hat Enterprise Linux.

Como posso baixar a imagem Docker do IronSecureDoc?

Faça o download da imagem Docker do IronSecureDoc executando o comando: docker pull ironsoftwareofficial/ironsecuredoc:latest no seu terminal.

É possível executar o contêiner IronSecureDoc sem um certificado SSL?

Sim, você pode executar o contêiner sem um certificado SSL usando o comando: ` docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey= -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest .

Como posso acessar a interface do IronSecureDoc no meu navegador?

Após iniciar o contêiner, acesse a interface do IronSecureDoc visitando http://localhost:8080/swagger/index.html em seu navegador da web.

Como faço para gerar e confiar em um certificado SSL para o IronSecureDoc?

Gere um certificado SSL usando: dotnet dev-certs https -ep $HOME/.aspnet/https/ironsecuredoc.pfx -p e confie nele com: dotnet dev-certs https --trust .

Quais variáveis de ambiente estão disponíveis para configuração no IronSecureDoc?

As variáveis de ambiente configuráveis no IronSecureDoc incluem PDF_MAX_SIZE_MB , REQUEST_TIMEOUT_SECONDS , ALLOWED_ORIGINS , HTTP_PORTS , HTTPS_PORTS e IronSecureDoc_LicenseKey .

Como posso ocultar texto em um PDF usando o IronSecureDoc?

Redija o texto em um PDF usando o comando cURL: curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-text' com os dados do formulário necessários.

Qual comando devo usar para parar um contêiner Docker do IronSecureDoc em execução?

Pare um contêiner Docker em execução usando o comando: docker stop .

Onde posso encontrar uma lista completa dos endpoints da API do IronSecureDoc?

A lista completa dos endpoints da API está disponível na Referência da API REST no site IronSecureDoc.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Versão: 2024.10 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas?
executar um exemplo Veja seu PDF ser criptografado.