¿Qué son los contenedores?

Los contenedores son paquetes de software que contienen todos los elementos necesarios para ejecutarse en cualquier entorno. De esta manera, los contenedores virtualizan el sistema operativo y se ejecutan en cualquier lugar, desde un centro de datos privado hasta la nube pública o incluso la laptop personal de un desarrollador. Todos los servicios de Google se ejecutan en contenedores, desde Gmail hasta YouTube y la Búsqueda. El uso de contenedores permite a nuestros equipos de desarrollo moverse rápidamente, implementar software de manera eficaz y operar a una escala sin precedentes. Aprendimos mucho sobre la ejecución de cargas de trabajo en contenedores y compartimos ese conocimiento con la comunidad durante el proceso: desde el principio, cuando contribuimos con cgroups al kernel de Linux, hasta la selección de diseños de nuestras herramientas internas para ofrecerlos como código abierto en el proyecto de Kubernetes.

Definición de contenedor

Los contenedores son paquetes ligeros de código de la aplicación junto con dependencias como versiones específicas de entornos de ejecución de lenguaje de programación y bibliotecas que se necesitan para ejecutar tus servicios de software.

Los contenedores hacen que sea sencillo compartir recursos de red, almacenamiento, memoria y CPU a nivel del sistema operativo y ofrecen un mecanismo de empaquetamiento lógico en el que las aplicaciones se pueden abstraer del entorno en el que se ejecutan. 

¿Cuáles son los beneficios de los contenedores?

 División de la responsabilidad

La creación de contenedores brinda una división clara de la responsabilidad, ya que los desarrolladores se enfocan en las dependencias y la lógica de las aplicaciones, y los equipos de operaciones de TI pueden concentrarse en la implementación y la administración en lugar de en detalles de las aplicaciones como la configuración y las versiones específicas de software.

 Portabilidad de la carga de trabajo

Los contenedores se pueden ejecutar de forma virtual en cualquier lugar, lo que facilita significativamente el desarrollo y la implementación en sistemas operativos Linux, Windows y Mac, en máquinas virtuales o servidores físicos, en la máquina de un desarrollador o en centros de datos locales y, por supuesto, en la nube pública. 

 Aislamiento de aplicaciones

Los contenedores virtualizan recursos de red, almacenamiento, memoria y CPU a nivel del sistema operativo, lo que permite a los desarrolladores tener una vista del SO aislado de forma lógica de otras aplicaciones.

Resuelve tus desafíos más difíciles con Google Cloud

Los clientes nuevos obtienen $300 en créditos gratuitos que pueden usar en Google Cloud.
Regístrate para recibir boletines informativos de Google Cloud con actualizaciones de productos, información sobre eventos, ofertas especiales y mucho más.

Contenedores frente a VM

Quizás ya conozcas las VM: un sistema operativo invitado como Linux o Windows que se ejecuta en un sistema operativo host con acceso al hardware subyacente. Se suele comparar a los contenedores con las máquinas virtuales (VMs). Como las máquinas virtuales, los contenedores te permiten empaquetar tu aplicación junto con bibliotecas y otras dependencias, y ofrecen entornos aislados para ejecutar los servicios de tu software. Sin embargo, como verás más adelante, no hay más similitudes, ya que los contenedores ofrecen una unidad mucho más liviana para que trabajen los desarrolladores y equipos de operaciones de TI, además de una gran cantidad de beneficios.

  • Los contenedores son mucho más ligeros que las VM.
  • Los contenedores se virtualizan a nivel del SO, mientras que las VMs se virtualizan a nivel del hardware.
  • Los contenedores comparten el kernel del SO y usan una fracción de la memoria que requieren las VMs.

¿Para qué se usan los contenedores?

Los contenedores ofrecen un mecanismo de empaquetado lógico en el que las aplicaciones se pueden abstraer del entorno en el que se ejecutan. Esta separación permite que las aplicaciones basadas en contenedores se implementen de manera fácil y uniforme, independientemente de si el entorno objetivo es un centro de datos privado, la nube pública o incluso la laptop personal del desarrollador.

 Desarrollo ágil

Los contenedores permiten que los desarrolladores trabajen mucho más rápido, ya que no tienen que lidiar con los problemas de los entornos y las dependencias.

 Operaciones eficientes

Los contenedores son ligeros y te permiten usar solo los recursos de procesamiento que necesitas. Esto posibilita que ejecutes tus aplicaciones de forma eficiente.

 Ejecución en cualquier lugar

Los contenedores pueden ejecutarse prácticamente en cualquier lugar. Donde sea que quieras ejecutar tu software, puedes usar contenedores.

Da el siguiente paso

Comienza a desarrollar en Google Cloud con el crédito gratis de $300 y los más de 20 productos del nivel Siempre gratuito.

Google Cloud
  • ‪English‬
  • ‪Deutsch‬
  • ‪Español‬
  • ‪Español (Latinoamérica)‬
  • ‪Français‬
  • ‪Indonesia‬
  • ‪Italiano‬
  • ‪Português (Brasil)‬
  • ‪简体中文‬
  • ‪繁體中文‬
  • ‪日本語‬
  • ‪한국어‬
Consola
Google Cloud