Saltar al pie de página
USANDO IRONSECUREDOC

Lista de contenedores Docker (Cómo funciona para desarrolladores)

En el panorama actual de desarrollo de software rápido, el despliegue y la gestión eficientes de aplicaciones son cruciales. Docker ha surgido como una solución líder para automatizar el despliegue de aplicaciones dentro de contenedores ligeros y portátiles. Al encapsular una aplicación y sus dependencias, Docker asegura un rendimiento consistente a través de diferentes entornos, desde el desarrollo local hasta la producción.

Esta tecnología de contenedorización simplifica la escalabilidad y la gestión de recursos, convirtiéndose en una herramienta esencial en las prácticas modernas de DevOps y en los flujos de trabajo de integración continua/despliegue continuo (CI/CD). En este artículo, exploraremos los fundamentos de Docker, el concepto de contenedores y cómo mejora el proceso de despliegue de aplicaciones, junto con un análisis detallado de IronSecureDoc, una herramienta de seguridad documental que aprovecha Docker para soluciones escalables.

¿Qué es Docker?

Docker es un entorno de código abierto que automatiza el despliegue de aplicaciones dentro de contenedores ligeros y portátiles. Los contenedores empaquetan la aplicación con todos sus paquetes dependientes de tal manera que se ejecutarán de la misma manera independientemente de dónde se ejecute la aplicación; ya sea en la computadora portátil de un desarrollador, un servidor de pruebas o incluso en un entorno de producción. Docker aporta eficiencia al mantener las aplicaciones aisladas de la infraestructura subyacente, permitiendo que múltiples contenedores se ejecuten en paralelo en el mismo host.

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 1 - Caso de uso para un contenedor de Docker

Esto simplifica la escalabilidad y la gestión de recursos; con Docker, el flujo de trabajo de desarrollo a producción se hace más fácil y optimizado, por lo tanto, es un jugador clave en los modernos flujos de trabajo de DevOps y CI/CD.

¿Qué es un contenedor?

Un contenedor es un paquete ejecutable, ligero y autosuficiente que contiene todo lo necesario para ejecutar software: desde código y entorno de ejecución hasta herramientas del sistema, bibliotecas y configuraciones en un solo paquete. Este es un entorno aislado del host y de otros contenedores, pero comparte el mismo núcleo del sistema operativo, lo que lo hace mucho más eficiente y rápido en comparación con las máquinas virtuales tradicionales.

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 2 - Visualización de un Contenedor de Docker

Los contenedores Docker están diseñados para ser portátiles. Si un desarrollador de software puede ejecutarlo en su laptop para desarrollo y un tester puede ejecutarlo en un servidor para pruebas, entonces idealmente un entorno de nube o de producción puede ejecutar esa misma pila de contenedores. La portabilidad combinada con el aislamiento y la escalabilidad de los contenedores hace que Docker sea una herramienta esencial para el despliegue moderno de software y los flujos de trabajo de CI/CD.

Los contenedores son el núcleo de la funcionalidad de Docker a través del cual los desarrolladores pueden asegurar que las aplicaciones funcionen de la misma manera, sin importar dónde se desplieguen.

Listado de contenedores Docker

Entre las operaciones que llevarás a cabo usando Docker está la lista de contenedores, por lo que podrás monitorear su estado o incluso gestionarlos mejor. Hay comandos de Docker para tal acción, y esto depende de si deseas imprimir solo los contenedores en ejecución o todos los contenedores, incluidos los detenidos.

Aquí está cómo puedes listar contenedores Docker:

1. Listado de contenedores en funcionamiento

Para listar solo los contenedores en ejecución actualmente, usa el siguiente comando docker ps:

docker ps
docker ps
SHELL

Este comando dará las siguientes columnas:

  • ID de Contenedor: Un identificador único para un contenedor.
  • Imagen: La imagen Docker a partir de la cual se ha creado el contenedor.
  • Comando: El comando que el contenedor está ejecutando.
  • Creado: Hace cuánto tiempo se creó el contenedor.
  • Estado: Si el contenedor está en ejecución o terminado.
  • Puertos: Un mapeo del puerto del host con el contenedor.
  • Nombres: El nombre asignado al contenedor, que puede ser generado automáticamente o establecido de manera manual.

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 3 - Ejemplo de salida del comando 'docker ps'

También puedes usar el comando más reciente 'docker container ls', pero nos centraremos en la sintaxis del comando 'docker ps'.

2. Listado de todos los contenedores (en ejecución y detenidos)

Para mostrar todos los contenedores en ejecución y detenidos, usa el flag -a:

docker ps -a
docker ps -a
SHELL

Este comando devuelve las mismas columnas que docker ps pero incluye contenedores detenidos o terminados, o todos los contenedores creados. Este comando es útil para gestionar contenedores detenidos o solucionar problemas en contenedores que se han bloqueado o terminado.

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 4 - Salida para el comando 'docker ps -a'

3. Listado de ID de contenedores únicamente

Si solo necesitas mostrar los IDs de los contenedores (lo cual puede ser útil para la creación de scripts o acciones automatizadas), puedes usar el flag -q:

docker ps -q
docker ps -q
SHELL

El comando docker ps -q imprimirá solo los IDs de los contenedores en ejecución, permitiéndote alimentar fácilmente los IDs a otros comandos Docker para acciones en lotes.

Por ejemplo, uno podría detener todos los contenedores en ejecución combinándolo con docker stop:

docker stop $(docker ps -q)
docker stop $(docker ps -q)
SHELL

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 5 - Salida del comando 'docker ps -q'

4. Filtrado de la lista de contenedores

También puedes filtrar la salida del comando docker ps en base a criterios especificados usando la opción --filter. A continuación se muestra un ejemplo para listar solo contenedores por estado:

docker ps -f "status=exited"
docker ps -f "status=exited"
SHELL

Esto solo listará los contenedores que han terminado. Puedes filtrar por el nombre de la imagen, etiquetas, u otros criterios personalizados como puertos o nombres.

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 6 - Salida del comando de filtrado

5. Formatear la salida

Para la legibilidad o salida personalizada, Docker permite formatear el resultado usando la opción --format. Por ejemplo, para listar solo el ID del contenedor y el nombre, puedes usar:

docker ps --format "{{.ID}}: {{.Names}}"
docker ps --format "{{.ID}}: {{.Names}}"
SHELL

Esto es especialmente útil cuando estás usando gestión de contenedores Docker en scripts o herramientas donde puedes necesitar ciertas piezas de información.

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 7 - Salida del comando docker ps formateado

¿Qué es IronSecureDoc?

IronSecureDoc es una herramienta de seguridad documental diseñada para proteger archivos sensibles proporcionando características de encriptación, redacción y firma digital. Permite a los usuarios asegurar documentos PDF, controlando los datos personales y confidenciales en su posesión. Algunas características incluyen protección por contraseña, cumplimiento con estándares como PDF/A y certificación digital, que a menudo se utiliza en los campos legal, sanitario o financiero. El software está disponible como una API REST, lo que lo hace altamente integrable en diferentes flujos de trabajo, y puede ser desplegado en Docker para soluciones de seguridad escalables y amigables con la nube.

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 8 - Página web de IronSecureDoc

Características de IronSecureDoc

IronSecureDoc es bastante impresionante en términos de manejo de seguridad PDF y gestión documental. Sus características incluyen encriptación, redacción y firma digital:

  • Encriptación: Ofrece encriptación de documentos PDF con encriptación de 128 o 256 bits con seguridad basada en contraseñas para mantener la confidencialidad de los datos.
  • Redacción: Esta característica elimina datos confidenciales como identificadores personales u otra información sensible, asegurando así el cumplimiento con los estándares y regulaciones de privacidad.
  • Firma Digital: Esto tiene una característica de firma digital con notarización de PDFs que soporta .pfx o .p12, asegurando la autenticidad del documento.
  • Cumplimiento: Asegura el cumplimiento con los estándares PDF/A y PDF/UA, lo cual es beneficioso para el archivo y la accesibilidad.
  • API REST: Tiene una API REST flexible que permite la integración con otros softwares y flujos de trabajo.
  • Control de Versión de Documentos: Proporciona control de versiones para rastrear todos los cambios y gestión de versiones para un mejor control de documentos.
  • Integración con Docker: La integración nativa con Docker facilita un despliegue más fácil en entornos escalables en la nube o en instalaciones locales.

Estas características lo hacen una herramienta poderosa para manejar documentos sensibles en sectores legales, de servicios de salud o financieros.

Cómo extraer IronSecureDoc al contenedor Docker

Abre una ventana de terminal o Símbolo del Sistema y usa este comando para extraer la imagen Docker de IronSecureDoc del repositorio:

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
SHELL

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 9 - Salida de consola al extraer la imagen Docker de IronSecureDoc

Ejecutar IronSecureDoc desde un contenedor

Ahora que un contenedor ha extraído una imagen, podemos ejecutar otro comando para iniciar un contenedor en ejecución llamado IronSecureDoc. Podemos usar el flag -p para el mapeo de puertos o el flag --rm para borrar contenedores después de detenerlos:

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

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 10 - Salida de consola al ejecutar IronSecureDoc desde un contenedor

Uso de IronSecureDoc con un contenedor Docker

IronSecureDoc se puede usar para redactar, certificar y encriptar documentos usando su API REST después de haber sido instalado y lanzado en Docker, como se mencionó anteriormente. Visita este enlace para puntos de acceso API y documentación con Swagger UI una vez hayas lanzado IronSecureDoc en un contenedor Docker: http://localhost:8080/swagger/index.html.

Lista de Contenedores Docker (Cómo Funciona Para Desarrolladores): Figura 11 - Swagger UI para interacción con puntos de acceso API

Por ejemplo, puedes enviar una solicitud POST a la API de IronSecureDoc para enviar un documento para encriptación:

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'
SHELL

Esta solicitud envía el documento a IronSecureDoc, aplicando la encriptación deseada.

Conclusión

Comandos como 'docker ps' y 'docker ps -a' hacen que la gestión de contenedores Docker sea eficiente al permitir una fácil monitorización, mantenimiento y administración de contenedores en ejecución y detenidos. Tales comandos ayudan a los desarrolladores y administradores del sistema a filtrar, formatear y manipular contenedores en diferentes entornos, permitiendo así una gestión efectiva de aplicaciones.

IronSecureDoc facilita el despliegue y escalamiento de características de seguridad documental como encriptación, redacción y firma digital como un contenedor Docker, asegurando rendimiento y seguridad mantenidos a través de diferentes plataformas. Para saber más sobre las licencias de IronSecureDoc, haz clic aquí. Además, Iron Software ofrece varios productos para mejorar tu proyecto de desarrollo que puedes aprender más aquí.

Preguntas Frecuentes

¿Cómo automatiza Docker la implementación de aplicaciones?

Docker automatiza la implementación de aplicaciones empaquetando aplicaciones con todas sus dependencias en contenedores portátiles y livianos. Esto garantiza que la aplicación funcione de manera consistente a través de diferentes entornos, desde el desarrollo hasta la producción.

¿Por qué son importantes los contenedores para el desarrollo moderno de software?

Los contenedores son cruciales porque proporcionan un entorno auto-contenido que incluye todas las dependencias necesarias para una aplicación. Esta aislamiento lleva a un rendimiento consistente y simplifica la escalabilidad y gestión de recursos, esenciales para las prácticas modernas de DevOps.

¿Cómo puedo listar los contenedores Docker en ejecución?

Puedes listar los contenedores Docker en ejecución usando el comando docker ps. Este comando proporciona detalles como ID de Contenedor, Imagen, Estado y más.

¿Qué comando lista todos los contenedores Docker, incluidos los detenidos?

Para listar todos los contenedores Docker, incluidos los detenidos, usa el comando docker ps -a. Esto es útil para gestionar y solucionar problemas de contenedores Docker.

¿Cómo filtro contenedores Docker basados en criterios específicos?

Puedes filtrar listados de contenedores Docker usando la opción --filter. Por ejemplo, docker ps -f "status=exited" muestra solo contenedores que han salido.

¿Cuáles son los beneficios de usar Docker para aplicaciones de seguridad documental?

El uso de Docker para aplicaciones de seguridad documental como IronSecureDoc proporciona escalabilidad y flexibilidad. Permite la integración y despliegue sin problemas de características como encriptación, redacción y firma digital dentro de un entorno seguro y escalable.

¿Cómo puedo obtener una imagen Docker para una herramienta de seguridad documental?

Puedes obtener la imagen Docker para una herramienta de seguridad documental utilizando el comando docker pull ironsoftwareofficial/ironsecuredoc en la terminal.

¿Qué características hacen que una herramienta de seguridad documental sea adecuada para entornos Docker?

Una herramienta de seguridad documental adecuada para entornos Docker, como IronSecureDoc, incluye características como encriptación de PDF, redacción, firma digital y un API REST para integración, todo lo cual puede desplegarse y gestionarse eficientemente dentro de contenedores.

¿Cómo puedo personalizar las salidas de comando Docker para una mejor legibilidad?

Puedes usar la opción --format con los comandos Docker para personalizar las salidas. Por ejemplo, docker ps --format "{{.ID}}: {{.Names}}" mostrará solo el ID y nombre del contenedor.

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