USO DE IRONSECUREDOC

Inicio de un contenedor Docker a partir de una imagen (Tutorial para desarrolladores)

Publicado en 16 de diciembre, 2024
Compartir:

¿Qué es Docker?

Dockeres una plataforma de código abierto que despliega y gestiona automáticamente aplicaciones dentro de contenedores ligeros y portátiles. Los contenedores empaquetan una aplicación junto con sus dependencias, que incluyen bibliotecas y archivos de configuración, para que pueda ejecutarse de manera coherente en diferentes entornos. Esto haría que el desarrollo y las pruebas fueran más sencillos porque las aplicaciones pueden ejecutarse de manera idéntica en sistemas diversos, ya sea en el portátil de un desarrollador, un servidor o unentorno de nube. La escalabilidad en la gestión de aplicaciones significaría desarrollar, enviar y ejecutar contenedores de manera eficiente, lo cual posee Docker.

Iniciar un contenedor Docker desde una imagen (Tutorial para desarrolladores): Figura 1 - Docker

En muchos aspectos, las imágenes de Docker facilitan la especificación de un entorno de ejecución coherente para los desarrolladores. La mayoría de las imágenes preconstruidas se pueden encontrar en un registro abierto llamado Docker Hub, y los desarrolladores las utilizan directamente o modifican el contenido de acuerdo a sus requisitos. Para aplicaciones que involucran múltiples contenedores, herramientas como Docker Compose se utilizan para orquestar el contenedor, mientras que Kubernetes puede gestionar una escalabilidad y automatización aún más complejas. Así, Docker se ha convertido en una herramienta esencial en el desarrollo de software y DevOps.

¿Qué es un contenedor Docker?

AContenedor de Dockeres básicamente una aplicación con todas las dependencias, como bibliotecas, binarios y archivos de configuración, empaquetada en una entidad ejecutable independiente y liviana. Los contenedores diseñados de forma aislada se ejecutarían sobre el núcleo del sistema operativo host, pero evitarían la interferencia de cualquier otro software en ejecución. Ser fácil de iniciar, detener o eliminar los hace ideales para su uso en pruebas, implementación y escalado.

Características del contenedor Docker

  • Aislamiento: Los contenedores se ejecutan en entornos aislados; las aplicaciones no entrarán en conflicto entre sí, incluso si utilizan un conjunto diferente de dependencias o bibliotecas.
  • Ligero: Como los contenedores comparten el núcleo del sistema operativo del anfitrión, son bastante pequeños y tienen tiempos de inicio más rápidos que las máquinas virtuales (VMs).
  • Portabilidad: Los contenedores son determinísticos para ejecutarse en cualquier otro sistema utilizando Docker, por lo tanto, son consistentes en los entornos de desarrollo, prueba y producción.
  • Escalabilidad: Los contenedores se replican y escalan fácilmente, y admiten el despliegue rápido de microservicios, así como su gestión.
  • Eficiencia de recursos: Los contenedores consumen menos recursos que las máquinas virtuales (VMs) y, por lo tanto, necesitan una mayor densidad con una utilización eficiente de los recursos informáticos.

¿Qué es una imagen de Docker?

Una imagen de Docker, por lo tanto, es una instrucción para crear un contenedor; es de solo lectura y en capas, lo que detalla el archivo del sistema más las dependencias necesarias para ejecutar una aplicación. Los Dockerfiles se utilizan para formar imágenes, que contienen las instrucciones para construir una imagen de Docker, lo cual puede ser tan complicado como instalar el software o copiar archivos. Cada vez que se cambia este Dockerfile, se crea una nueva capa de imagen para mantener la eficiencia y modularidad. Lanza una imagen y simplemente hace que la instancia del contenedor, basada en esa imagen, se ejecute en vivo.

Características de una Imagen Docker

  • Pila Multinivel: Las imágenes se componen a través de capas, y con Dockerfile, cada instrucción implica una capa de trabajo. Por lo tanto, la compilación debe ser optimizada porque necesitan reconstruir solo las capas que han cambiado.
  • Reutilización: Las imágenes base como Ubuntu o node se pueden reutilizar de un proyecto a otro; esto ahorra mucho tiempo y recursos de desarrollo.
  • Versionado: La imagen se puede etiquetar para soportar el versionado. Esto facilitará volver a una versión anterior si y cuando sea necesario.
  • Modularidad: Todos los cambios en una imagen son incrementales, por lo que las actualizaciones son fáciles e incluso sencillas sin necesidad de reconstruir la imagen completa nuevamente.
  • Disponible en Docker Hub: Registros de imágenes públicos y privados que facilitan compartir y desplegar imágenes.

¿Cómo crear un contenedor Docker?

El Dockerfile es un archivo de texto que proporciona instrucciones sobre cómo crear tu imagen de Docker. En este archivo, se supone que debes tener la imagen base, las dependencias, el código de la aplicación, las variables de entorno y los comandos para ejecutar la aplicación. He aquí un ejemplo sencillo:

# Use an official Node.js runtime as a parent image
FROM node:18
# Set the working directory in the container
WORKDIR /app
# Copy package.json and install dependencies
COPY package.json /app
RUN npm install
# Copy the rest of the application code
COPY . /app
# Expose the application’s port
EXPOSE 3000
# Define the command to run the application
CMD ["node", "app.js"]
# Use an official Node.js runtime as a parent image
FROM node:18
# Set the working directory in the container
WORKDIR /app
# Copy package.json and install dependencies
COPY package.json /app
RUN npm install
# Copy the rest of the application code
COPY . /app
# Expose the application’s port
EXPOSE 3000
# Define the command to run the application
CMD ["node", "app.js"]
#Use an official Node.js runtime as a parent image
#Set the working directory in the container
#Copy package.json and install dependencies
#Copy the rest of the application code
#Expose the application's port
#Define the command to run the application
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'FROM node:18 WORKDIR /app COPY package.json /app RUN npm install COPY. /app EXPOSE 3000 CMD ["node", "app.js"]
VB   C#

Construir la imagen de Docker

Utilice el Dockerfile para crear su imagen de Docker. En la línea de comandos del terminal desde el directorio que contiene su Dockerfile, ejecute el siguiente comando:

Asegúrate de instalar Docker Desktop antes de ejecutar el siguiente código.

docker build -t my-app .
docker build -t my-app .
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker build -t my-app.
VB   C#

Crea una imagen llamada my-app. Para confirmar que se creó una imagen, puedes ejecutar Docker images.

Ejecutar el contenedor Docker

Con una imagen, puedes crear un contenedor Docker y luego ejecutarlo usando el comando docker run. El daemon de Docker iniciará y monitorizará el proceso en modo separado o ejecutándose en segundo plano.

docker run -d -p 3000:3000 --name my-running-app my-app
docker run -d -p 3000:3000 --name my-running-app my-app
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker run -d -p 3000:3000 --name my-running-app my-app
VB   C#
  • -d: Desactivar el modo de un contenedor Docker.
  • -map 3000:3000 Mapear el host al puerto 3000 del contenedor en el contenedor.
  • --name my-running-app: Asigna un nombre definido por el usuario al contenedor.

Verificar contenedor

Para comprobar los contenedores de Docker en ejecución, use:

docker ps
docker ps
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker ps
VB   C#

Inicio del Contenedor Docker Desde la Imagen (Tutorial para Desarrolladores): Figura 2 - Ejecutando Contenedores Docker

El código anterior muestra los detalles del contenedor en ejecución con el ID del contenedor, el nombre, el nombre de la imagen, etc.

Detener y eliminar contenedor

//Stop container
docker stop dazzling_snyder
// Remove container
docker rm dazzling_snyder
//Stop container
docker stop dazzling_snyder
// Remove container
docker rm dazzling_snyder
'Stop container
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker @stop dazzling_snyder docker rm dazzling_snyder
VB   C#

Iniciar un contenedor Docker desde una imagen (Tutorial para desarrolladores): Figura 3 - Detener contenedor

¿Qué es IronSecureDoc?

IronSecureDocDocker es una solución de procesamiento de documentos en contenedores de Iron Software que puede procesar documentos automáticamente sin ninguna intervención humana en un entorno Docker. Ofrece flujos de trabajo de documentos complejos y máxima protección de datos con cifrado, firma digital, descifrado, marca de agua y mucho más para archivos PDF y documentos. Garantiza implementaciones aisladas consistentes y escalables en todas las plataformas y, por lo tanto, lo hace adecuado para la integración en flujos de trabajo de DevOps y CI/CD.

Inicio de contenedor Docker desde imagen (Tutorial para desarrolladores): Figura 4 - IronSecureDoc: El servidor de seguridad y cumplimiento de PDF

Este enfoque de contenedorización mejora el manejo de documentos en aplicaciones que requieren automatización y alta compatibilidad de seguridad, así como también con microservicios y entornos nativos de la nube. IronSecureDoc es generalmente útil para los desarrolladores que crean y construyen aplicaciones que requieren un procesamiento de documentos automático y confiable en un contexto Docker bien controlado y portátil.

Instalar y ejecutar IronSecureDoc

El siguiente comando debe ejecutarse desde el símbolo del sistema o dentro de una ventana de terminal abierta para descargar la imagen de Docker de IronSecureDoc del repositorio.

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker pull ironsoftwareofficial/ironsecuredoc
VB   C#

Iniciar contenedor de Docker desde imagen (Tutorial para desarrolladores): Figura 5 - Descargar imagen de IronSecureDoc

Después de la descarga de la imagen de Docker, podemos iniciar otro comando para comenzar un contenedor operativo llamado IronSecureDoc.

Creando un nuevo Contenedor para IronSecureDoc

docker container run --rm -p 8080:8080 -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
docker container run --rm -p 8080:8080 -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker container run --rm -p 8080:8080 -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
VB   C#

El comando de ejecución de Docker mencionado anteriormente creará una instancia de contenedor de IronSecureDoc.

Iniciar contenedor Docker desde imagen (Tutorial para desarrolladores): Figura 6 - Nuevo contenedor

Usando el contenedor IronSecureDoc

IronSecureDoc ha permitido a los usuarios en la instalación y ejecución en Docker redactar, certificar o cifrar archivos a través de su API REST.

Iniciar contenedor Docker desde imagen (Tutorial para desarrolladores): Figura 7 - SecureDoc Web API

Por ejemplo, cuando desees cifrar un documento, podrías realizar el siguiente POST a la API de IronSecureDoc:

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'curl -X 'POST' \ 'http: -H 'accept: */ *' \ -H 'Content-Type: multipart/form-data' \ -F 'pdf_file=@test.pdf;type=application/pdf'
VB   C#

Esto reenviará automáticamente el documento a IronSecureDoc, que luego cifrará los datos en consecuencia.

Conclusión

En términos simples, Docker facilita mucho el despliegue de una aplicación porque un desarrollador puede crear un contenedor a partir de una imagen. Por lo tanto, hay uniformidad en un entorno portátil y escalable. Hace que sea bastante posible iniciar un contenedor Docker a partir de una imagen, lo que lleva a una ejecución muy fluida de aplicaciones a través de plataformas y resulta en una utilización eficiente de los recursos con un escalado flexible, siendo bastante beneficioso para los procesos de DevOps y CI/CD.

En la misma línea, IronSecureDoc Docker utiliza la arquitectura de presentación en contenedores de Docker que ofrece soluciones de procesamiento de documentos seguras y automatizadas. Juntos, Docker e IronSecureDoc proporcionan herramientas poderosas para construir aplicaciones seguras y escalables en el desarrollo de software moderno. Para saber más sobre la licencia de IronSecureDoc, haga clic aquí.página de licenciasy para obtener detalles sobre los muchos productos de Iron Software, sigue este página de la suite de bibliotecas.

< ANTERIOR
Red de Docker Compose (Cómo funciona para desarrolladores)
SIGUIENTE >
Docker sign PDF (Tutorial para desarrolladores