Resumen

  • Los contenedores son livianos y utilizan recursos mínimos del sistema.
  • Los contenedores Docker eliminan los problemas que surgen de los conflictos de paquetes
  • Es fácil experimentar con contenedores Docker y actualizarlos

Cuando te adentras en el mundo de la virtualización, sin duda te encuentras con contenedores. Diseñados como entornos independientes que incluyen todo, desde aplicaciones hasta sus archivos de configuración y dependencias, los contenedores son tan útiles para programadores y maestros de DevOps como para usuarios ocasionales y entusiastas del autoalojamiento. Si aún no estás usando estas herramientas geniales para mejorar tu experiencia informática, este artículo te convencerá de darle una oportunidad a los contenedores Docker.

Relacionado
Cómo uso Docker con Proxmox para crear el dúo perfecto de laboratorio en casa

Si bien Proxmox proporciona soporte integrado para la contenedorización LXC, es posible ejecutar contenedores Docker en la plataforma de virtualización.

4

4Los contenedores son ultraligeros

Especialmente cuando se compara con la máquina virtual promedio

Los contenedores y las máquinas virtuales pueden ser los aspectos más esenciales de los laboratorios domésticos y las estaciones de trabajo alojadas en el propio host, pero puede resultar un poco más difícil ejecutar varias instancias de estos últimos en una computadora portátil o mini-PC promedio. Esto se debe a que las máquinas virtuales emulan todo, desde el sistema operativo hasta el núcleo, lo que significa que necesitará varios núcleos de CPU junto con una gran cantidad de memoria para ejecutar un par de máquinas virtuales. ¡Eso es antes de incluir la sobrecarga causada por los sistemas operativos basados ​​en GUI!

Mientras tanto, los contenedores dependen del núcleo del sistema operativo subyacente y requieren una cantidad sorprendentemente baja de recursos del sistema. Dado que es posible implementar múltiples contenedores en dispositivos de bajo rendimiento como Raspberry Pi sin que se vea afectado el rendimiento, no tendrá problemas para ejecutar sus aplicaciones favoritas con Docker en sistemas económicos.

3No hay necesidad de preocuparse por paquetes conflictivos

Archivo espagueti, ¡me aburro!

Ejecución del comando docker images en Debian

Si ha intentado crear proyectos sin inicializar entornos virtuales de antemano, es posible que ya esté familiarizado con la pesadilla que supone gestionar paquetes. No solo tiene que elegir la versión correcta del paquete que sea compatible con las demás dependencias de su proyecto, sino que también deberá asegurarse de que ninguno de los paquetes entre en conflicto con los demás.

Afortunadamente, los contenedores Docker evitan este problema gracias a su naturaleza aislada. Dado que cada contenedor es una aplicación independiente con sus propios conjuntos de paquetes y bibliotecas, todo lo que hay que hacer es implementar instancias de contenedor independientes para cada servicio y olvidarse de las dependencias conflictivas.

2Perfecto para la experimentación.

Y las actualizaciones ya no son una molestia

docker-ugos-4

Digamos que se te ha ocurrido un proyecto divertido y quieres crearlo en tu PC. Pero configurar cada servicio, dependencia y paquete puede ser una tarea bastante ardua, especialmente si el proyecto en el que estás trabajando no está muy bien documentado. Si a eso le sumas todas las horas que necesitarás dedicar a solucionar problemas en caso de que una actualización del sistema dañe tus paquetes, podrás ver por qué instalar manualmente todas las dependencias para tu proyecto es más complicado de lo que vale.

Por el contrario, los contenedores Docker son extremadamente fáciles de administrar y aún más sencillos de actualizar. Dado que trabajará con imágenes en lugar de múltiples dependencias, todo lo que tiene que hacer es extraer la última imagen y volver a implementar el contenedor con la versión más nueva.

1Simplifique el proceso de alojamiento propio de aplicaciones

Con el poder deDocker Composey los archivosYML

El archivo Docker Compose para RomM

Desde ahorrarte unos dólares hasta preservar tu privacidad, alojar tus propios servicios tiene varias ventajas. Lamentablemente, el acceso fácil no es una de ellas, y es posible que te resulte difícil navegar por el panorama de los servicios alojados por ti mismo si eres un principiante. Sin embargo, Docker elimina la mayor parte de la complejidad asociada con alojar tus propias aplicaciones y servicios.

Casi todas las aplicaciones de renombre en el espacio alojado por uno mismo tienen imágenes de contenedor dedicadas en Docker Hub. Como tal, puede ejecutar el comandodocker pull para obtener una imagen antes de ejecutardocker runpara implementar un contenedor con dicha imagen. Pero si es alguien que prefiere ajustar sus contenedores, puede descargar los archivosdocker-compose.ymlde sus aplicaciones favoritas, modificar las variables usando un editor de texto y ejecutar el comandodocker compose up -dpara ponerlas en funcionamiento sin problemas.

Relacionado
25 comandos esenciales que todo usuario de Docker debería conocer

La interfaz de línea de comandos de Docker puede parecer intimidante, ¡pero estos comandos pueden ayudarte a dominarla en poco tiempo!

Convierte tu PC en un potente servidor con contenedores Docker

Ejecutar EmulatorJS dentro de un contenedor Docker

Además de estas ventajas, los contenedores Docker también son más seguros que ejecutar servicios directamente sobre el sistema operativo. No me malinterpretes, los contenedores siguen siendo vulnerables a las amenazas y es posible que los vectores de ataque escapen de los confines de un contenedor. Pero puedes reforzarlos aún más con varias acciones de precaución, como implementarlos en modo sin raíz y utilizar el módulo de seguridad AppArmor.

Dicho esto, si eres usuariode Windows 11, tendrás que soportar un proceso de instalación bastante complicado para Docker. Esto se debe a que, a diferencia de las distribuciones de Linux, Windows 11 necesitaWSL2para ejecutar contenedores Docker. Por ello, los hipervisores de tipo 2 comoVirtualBoxyVMware Workstation Propueden resultar útiles cuando deseas experimentar con contenedores Docker sin tener que pasar por la molestia de configurar WSL2.