Construcción de Docker Compose (Tutorial para devs)
¿Qué es Docker ?
Docker es una plataforma de código abierto que simplifica el proceso de desarrollar, desplegar y ejecutar aplicaciones utilizando la contenedorización. Los contenedores son unidades ultraligeras y portátiles que empaquetan una aplicación junto con sus dependencias, permitiendo una ejecución consistente en diversos entornos, desde el sistema local de un desarrollador hasta servidores de producción. A diferencia de las máquinas virtuales tradicionales, los contenedores utilizan el núcleo del sistema operativo host, mejorando su velocidad y eficiencia.

Docker ofrece una plantilla virtualizada a través de imágenes de Docker para crear y gestionar conjuntos de contenedores. Incluye Docker Hub, una forma de repositorio de imágenes de contenedores. El gran atractivo de esta tecnología es su escalabilidad, portabilidad y eficiencia, haciéndola altamente popular en DevOps y flujos de trabajo de desarrollo enfocados en la nube.
¿Cómo funciona Docker?
- El Daemon de Docker escucha solicitudes del Cliente de Docker, que pueden incluir
docker build,docker pullodocker run. - El Daemon de Docker maneja la creación, gestión y monitoreo de contenedores. También recupera las imágenes de Docker requeridas de un registro, como Docker Hub.
- Usando la imagen descargada, el daemon crea un contenedor aislado, efectivamente una instancia en ejecución de la aplicación.
- Los contenedores comparten el núcleo del SO del host pero permanecen aislados entre sí, permitiendo que el software opere en un entorno único con sus dependencias.
+--------------------+
| Docker Client |
| (CLI/API) |
+--------------------+
|
v
+--------------------+ +---------------------+
| Docker Daemon | --------> | Docker Registry |
| (manages resources| | (stores images) |
| & runs containers)| +---------------------+
+--------------------+
|
v
+---------------------+
| Container |
| (App Instance) |
+---------------------+
|
v
+---------------------+
| Docker Image |
| (App Blueprint) |
+---------------------+¿Qué es Docker Compose?
Docker Compose proporciona una forma fácil de gestionar una aplicación Docker de múltiples contenedores usando un solo archivo: docker-compose.yml. Este archivo YAML permite la configuración de múltiples servicios, especificando aspectos como imágenes de Docker, variables de entorno, redes y volúmenes. Puedes utilizar comandos de Docker Compose como docker-compose up o docker-compose down para gestionar todos los contenedores en una aplicación con una sola acción.
+--------------------------+
| docker-compose.yml | (Configuration file)
+--------------------------+
|
v
+----------------+ +----------------+ +----------------+
| Service 1 | | Service 2 | | Service 3 |
| (e.g. web) | | (e.g. db) | | (e.g. cache) |
+----------------+ +----------------+ +----------------+
| | |
-----------------------------------------
Docker ApplicationDocker Compose es particularmente ventajoso para aplicaciones complejas como los microservicios con numerosas instancias de contenedor. Se utiliza efectivamente en entornos de desarrollo, pruebas y producción.
Crear una nueva aplicación React JS con ASP.NET Core
Sigue estos pasos para crear una nueva aplicación React de Visual Studio con un backend de ASP.NET Core y agregar soporte Docker:
Prerrequisitos
- Visual Studio: Asegúrate de tener instalado Visual Studio 2022 o una versión más reciente con las cargas de trabajo necesarias:
- Desarrollo web y ASP.NET
- Desarrollo de Node.js (React)
- Soporte Docker
- Docker Desktop: Debe estar instalado y en ejecución.
Crear nuevo proyecto
- Abre Visual Studio y elige Nuevo Proyecto desde el menú.

- Busca "Aplicación Web React y ASP.NET Core" en el diálogo "Crear un nuevo proyecto" y selecciónalo. Haz clic en Siguiente.

- Proporciona un nombre para el proyecto, selecciona un nombre de solución y elige la ubicación de guardado. Haz clic en Siguiente.

- Asegúrate de que el Soporte Docker está habilitado. Selecciona el marco deseado y haz clic en Crear.

- Después de crear el proyecto, agrega soporte Docker haciendo clic derecho en el nodo del proyecto y seleccionando Agregar > Soporte Docker.

- Elige el nombre y tipo del contenedor, luego haz clic en Aceptar.

Ahora que el proyecto recién creado se ha agregado al contenedor Docker, los comandos de Docker Compose pueden ejecutarlo. Ejemplo de salida generada del código del cliente de React JS.

Código del lado del servidor de la API ejecutándose desde el contenedor Docker.

IronSecureDoc
IronSecureDoc permite a los desarrolladores incrustar eficientemente el procesamiento de documentos seguros en aplicaciones contenedorizadas. Con el soporte de Docker, encapsula tu aplicación ASP.NET Core utilizando IronSecureDoc, fomentando un despliegue y escalamiento fluido. Construye un Dockerfile para integrar IronSecureDoc con tu aplicación ASP.NET Core, junto con los scripts o configuraciones necesarias.

Además, un archivo docker-compose.yml puede describir dependencias de servicio y variables de entorno para fácil acceso, ayudando en el manejo eficiente de tareas de seguridad de documentos en diferentes entornos de despliegue. Asegurarse de la instalación y configuración de IronSecureDoc, como Docker, es esencial para ofrecer funciones como encriptación y redacción de documentos.
Instalación y ejecución de IronSecureDoc
Recupera la imagen Docker de IronSecureDoc con este comando:
docker pull ironsoftwareofficial/ironsecuredocdocker pull ironsoftwareofficial/ironsecuredoc
Después de descargar la imagen, usa el siguiente comando para lanzar IronSecureDoc en un nuevo contenedor:
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latestdocker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
Uso de IronSecureDoc con un contenedor Docker
La API REST de IronSecureDoc permite operaciones de documento como redacción, certificación y encriptación una vez instalado y en ejecución en Docker. Para más información sobre los endpoints de la API, revisa la documentación.
Para encriptar un documento, envía una solicitud 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'Este comando envía el documento a IronSecureDoc para su encriptación.
Conclusión
Integrar Docker Compose con IronSecureDoc mejora considerablemente la eficiencia y confiabilidad de las aplicaciones que requieren manejo seguro de documentos. Docker Compose gestiona eficazmente aplicaciones de múltiples contenedores, simplificando la coordinación de dependencias y servicios, incluido IronSecureDoc, lo cual asegura la consistencia del entorno de desarrollo, simplifica las configuraciones y aumenta la escalabilidad.
En esta configuración, los desarrolladores pueden aprovechar completamente las características de seguridad de documentos, como la encriptación y redacción, dentro de un marco contenedorizado. En general, combinar Docker Compose con IronSecureDoc enriquece el proceso de desarrollo, ofreciendo un método seguro y eficiente para manejar documentos sensibles en aplicaciones modernas. Para obtener información sobre las licencias de IronSecureDoc, visita esta página. Haz clic aquí para explorar más productos de Iron Software.
Preguntas Frecuentes
¿Qué es Docker y cómo facilita el despliegue de aplicaciones?
Docker es una plataforma de código abierto que simplifica el desarrollo y el despliegue de aplicaciones usando contenedores. Los contenedores son unidades ligeras y portátiles que empaquetan una aplicación con todas sus dependencias, asegurando una ejecución consistente en varios entornos.
¿Cómo ayuda Docker Compose a gestionar aplicaciones complejas?
Docker Compose es una herramienta que gestiona aplicaciones Docker con múltiples contenedores utilizando un archivo `docker-compose.yml`. Simplifica la configuración y coordinación de servicios, imágenes, redes y volúmenes, haciendo que sea ideal para gestionar aplicaciones complejas como microservicios.
¿Cuáles son los pasos para crear una aplicación React JS con ASP.NET Core usando Docker en Visual Studio?
Para crear una aplicación React JS con ASP.NET Core usando Docker en Visual Studio, asegúrese de tener Visual Studio 2022 o posterior con las cargas de trabajo necesarias y Docker Desktop instalado. Cree el proyecto, agregue soporte para Docker y use comandos Docker Compose para gestionar la aplicación.
¿Cómo se integra IronSecureDoc con Docker para el procesamiento seguro de documentos?
IronSecureDoc se puede integrar con Docker extrayendo su imagen Docker y ejecutándola en un contenedor. Esta configuración permite operaciones de procesamiento seguro de documentos como cifrado y redacción a través de su API REST, mejorando la seguridad en aplicaciones en contenedores.
¿Cuáles son los beneficios de usar Docker Compose con IronSecureDoc para el procesamiento de documentos?
Integrar Docker Compose con IronSecureDoc mejora la eficiencia y confiabilidad de la aplicación gestionando dependencias y servicios en un entorno de contenedores. Asegura el manejo seguro y escalable de documentos, lo cual es crucial para aplicaciones que requieren robusta seguridad documental.
¿Cómo se agrega soporte para Docker a un proyecto existente de Visual Studio?
Para agregar soporte para Docker a un proyecto existente de Visual Studio, haga clic derecho en el nodo del proyecto, seleccione Agregar > Soporte para Docker, y elija las opciones adecuadas de contenedor. Esto integra capacidades de Docker a su proyecto, permitiendo desarrollo en contenedores.
¿Cuál es el proceso para ejecutar IronSecureDoc en un contenedor Docker?
Para ejecutar IronSecureDoc en un contenedor Docker, use el comando `docker pull` para obtener la imagen, luego ejecute `docker container run` con las variables de entorno necesarias, como la clave de licencia y los puertos. Esta configuración facilita el procesamiento seguro de documentos dentro de un contenedor.
¿Cómo puedo cifrar un documento usando IronSecureDoc en un entorno Docker?
Puede cifrar un documento usando IronSecureDoc enviando una solicitud POST a su API. Use el comando `curl` para subir el documento, especificando la ruta del archivo local y los parámetros de cifrado. Esta operación asegura el documento dentro de un contenedor Docker.








