Alojamiento de IronSecureDoc en Linux con C

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

IronSecureDoc es un contenedor Docker diseñado para ofrecerte una poderosa manipulación de PDF detrás de una simple API REST, sin las complicaciones y sobrecarga de servicios SaaS en línea. Esta guía te guiará a través de los pasos para hospedar IronSecureDoc en tu máquina, incluyendo la configuración de variables de entorno y un ejemplo básico de uso de la API REST. Para ver la API completa, consulta nuestra Referencia de API REST.

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

Requisitos previos

AdvertenciaDocker Desktop en Linux ejecuta una máquina virtual (VM) que crea y utiliza un contexto de Docker personalizado, desktop-linux , al iniciarse.

Esto significa que las imágenes y contenedores desplegados en el Motor Docker de Linux (antes de la instalación) no están disponibles en Docker Desktop para Linux.

Plataformas

Guía paso a paso

1. Instalar Docker Desktop

Si aún no has instalado Docker Desktop, sigue estos pasos:

  1. Ve a la página de descarga de Docker Desktop.
  2. Descarga el instalador de Docker Desktop para Linux.
  3. Ejecuta el instalador y sigue las instrucciones en pantalla.
  4. Después de la instalación, inicia Docker Desktop y asegúrate de que esté en funcionamiento.

2. Extraiga la imagen Docker "IronSecureDoc"

Abre un símbolo del sistema y descarga la última imagen de IronSecureDoc desde Docker Hub:

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

3. Ejecute el contenedor sin certificado

Inicia el contenedor Docker con las variables de entorno necesarias:

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

Aplicar una prueba o una clave de licencia para eliminar marcas de agua

@@--SOPORTE-t-ABIERTO--@@ Reemplaza <IRONSECUREDOC_LICENSE_KEY> con tu clave de licencia real de IronSecureDoc. De lo contrario, se aplicará una marca de agua en las Funciones Empresariales.

Swagger UI in Browser

)}]

4. Acceda al contenedor

4. Acceder al Contenedor

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

Swagger UI in Browser

5. Ejecute el contenedor IronSecureDoc con certificado

5. Ejecutar el Contenedor IronSecureDoc con Certificado

Si necesitas ejecutar el contenedor con un certificado, sigue estos pasos para generar el certificado y configurar la máquina local:

   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
  1. Generar Certificado:

Reemplaza <CREDENTIAL_PLACEHOLDER> con una contraseña.

   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
  1. Ejecutar el Contenedor Docker:

6. Gestión del contenedor

6. Gestionando el Contenedor Puedes gestionar tu contenedor en ejecución usando comandos de Docker.

Aquí tienes algunos comandos útiles:

  docker stop <container_id>
  docker stop <container_id>
SHELL
  • Detener el contenedor:

    docker start <container_id>
    docker start <container_id>
    SHELL
  • Iniciar el contenedor:

    docker rm -f <container_id>
    docker rm -f <container_id>
    SHELL
  • Eliminar el contenedor:

Variables de entorno

Variables de Entorno

  • PDF_MAX_SIZE_MB (Por defecto: 30): Establece el tamaño máximo permitido para la carga de archivos PDF en Megabytes.
  • PDF_MAX_SIZE_MB (Por defecto: 30): Establece el tamaño máximo permitido para la carga de archivos PDF en Megabytes. - REQUEST_TIMEOUT_SECONDS (Por defecto: 5): Establece el tiempo de espera para solicitudes API en segundos.
  • ALLOWED_ORIGINS: Configura el intercambio de recursos de origen cruzado (CORS) especificando las URL de origen permitidas. - ALLOWED_ORIGINS: Establece CORS especificando las URL de origen permitidas. Separa múltiples URL con comas.
  • HTTP_PORTS: Define los puertos HTTP que el contenedor expone. - HTTP_PORTS: Define los puertos HTTP que el contenedor expone. Separe puertos con punto y coma (;).
  • HTTPS_PORTS: Define los puertos HTTPS que el contenedor expone. - HTTPS_PORTS: Define los puertos HTTPS que el contenedor expone. Separe puertos con punto y coma (;). Esto debe coincidir con el mapeo de puertos usando el flag -p (por ejemplo, 8081). - IronSecureDoc_LicenseKey (Requerido): Establece la clave de licencia de IronSecureDoc.

Ejemplo básico: redactar texto en un documento

Para obtener la lista completa de puntos finales de API, consulte la Referencia de la API REST completa.

Redactar 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

Reemplace /path/to/your/document.pdf con la ruta real al documento que desea redactar y sensitiveWord con la palabra que desea redactar.

Redactar expresiones regulares

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

Reemplace /path/to/your/document.pdf con la ruta real al documento que desea redactar y [0-9] con la expresión regular que desea coincidir y redactar.

Conclusión

Reemplaza /path/to/your/document.pdf con la ruta real del documento y [0-9] con la expresión regular que deseas reducir. Has hospedado exitosamente IronSecureDoc en tu máquina y lo has configurado con las variables de entorno necesarias. Para obtener más detalles sobre la configuración y el uso, consulte la Referencia de la API REST completa.

Preguntas Frecuentes

¿Qué es IronSecureDoc y cómo funciona?

IronSecureDoc es un contenedor de Docker que ofrece poderosas capacidades de manipulación de PDF a través de una API REST, permitiendo seguridad de documentos sin conexión sin depender de servicios SaaS.

¿Cuáles son los requisitos para configurar IronSecureDoc en un servidor Linux?

Para configurar IronSecureDoc en un servidor Linux, asegúrese de que Docker Desktop esté instalado en su distribución de Linux, como Ubuntu, Debian, Fedora o Red Hat Enterprise Linux.

¿Cómo puedo descargar la imagen de Docker de IronSecureDoc?

Descargue la imagen de Docker de IronSecureDoc ejecutando el comando: docker pull ironsoftwareofficial/ironsecuredoc:latest en su terminal.

¿Es posible ejecutar el contenedor IronSecureDoc sin un certificado SSL?

Sí, puede ejecutar el contenedor sin un certificado SSL usando el comando: docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey= -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest.

¿Cómo puedo acceder a la interfaz de IronSecureDoc en mi navegador?

Después de iniciar el contenedor, acceda a la interfaz de IronSecureDoc visitando http://localhost:8080/swagger/index.html en su navegador web.

¿Cómo genero y confío en un certificado SSL para IronSecureDoc?

Genere un certificado SSL usando: dotnet dev-certs https -ep $HOME/.aspnet/https/ironsecuredoc.pfx -p y confíe en él con: dotnet dev-certs https --trust.

¿Qué variables de entorno están disponibles para la configuración en IronSecureDoc?

Las variables de entorno configurables en IronSecureDoc incluyen PDF_MAX_SIZE_MB, REQUEST_TIMEOUT_SECONDS, ALLOWED_ORIGINS, HTTP_PORTS, HTTPS_PORTS, y IronSecureDoc_LicenseKey.

¿Cómo puedo redactar texto en un PDF usando IronSecureDoc?

Redacte texto en un PDF usando un comando cURL: curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-text' con los datos de formulario requeridos.

¿Qué comando debo usar para detener un contenedor de Docker IronSecureDoc en ejecución?

Detenga un contenedor de Docker en ejecución usando el comando: docker stop .

¿Dónde puedo encontrar una lista completa de endpoints de la API para IronSecureDoc?

La lista completa de endpoints de la API está disponible en la Referencia de API REST en el sitio web de IronSecureDoc.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más
¿Listo para empezar?
Version: 2024.10 recién lanzado