Espejo concepto-medio ambiente concepto-contenedor

Para aprender algo, necesita conocer sus principios, puede compensar lo que puede hacer por sí mismo y luego buscar cómo puede hacerlo.

https://zhuanlan.zhihu.com/p/38552635

Docker es la plataforma de contenedores de software líder en el mundo.

Los contenedores son paquetes de software en unidades estandarizadas para desarrollo, entrega e implementación.

Una imagen de contenedor es un paquete de software ligero, ejecutable e independiente que contiene todo el contenido necesario para que se ejecute el software: código, entorno de ejecución, herramientas del sistema, bibliotecas del sistema y configuraciones.

El software en contenedores es adecuado para aplicaciones basadas en Linux y Windows, y se puede utilizar de forma coherente en cualquier entorno.

Los contenedores dan independencia al software y lo protegen de las diferencias ambientales externas (por ejemplo, entornos de desarrollo y ensayo), lo que ayuda a reducir los conflictos entre equipos que ejecutan software diferente en la misma infraestructura.

En términos sencillos: un contenedor es un lugar para guardar cosas, al igual que una mochila puede contener todo tipo de material de oficina, un armario puede contener todo tipo de ropa y un zapatero puede contener todo tipo de zapatos. Nuestro almacenamiento de contenedores actual puede estar más sesgado hacia aplicaciones como sitios web, programas e incluso entornos de sistema.

Comprender las máquinas físicas, las máquinas virtuales y los contenedores.

Máquina física: un edificio, un hogar, cimientos independientes, jardín independiente

Máquina virtual: un edificio contiene varias suites, una suite y un hogar, cimientos compartidos, jardín compartido, baño independiente, cocina y banda ancha.

 

Contenedor: Una suite se divide en múltiples compartimentos pequeños (apartamentos cápsula), cada cápsula ocupa un inquilino, compartiendo los cimientos, compartiendo el jardín y compartiendo el baño, la cocina y la banda ancha.

Una máquina virtual ejecuta un sistema operativo completo después de virtualizar un conjunto de hardware. La virtualización de contenedores es el sistema operativo en lugar del hardware, y un conjunto de recursos del sistema operativo se comparte entre contenedores, por lo que el nivel de aislamiento del contenedor será ligeramente menor.

Estibador

Docker es la plataforma de contenedores de software líder en el mundo,

Docker proporciona herramientas estandarizadas que pueden encapsular, transferir y administrar cualquier código que deba enviarse

Todas las herramientas de entrega de software, desarrollo, pruebas, integración continua, implementación, gestión de versiones, entorno operativo ..... las habilidades del personal se unifican de acuerdo con Docker.

Docker utiliza el lenguaje Go lanzado por Google para el desarrollo y la implementación. Se basa en las tecnologías cgroup, namespace y UnionFS similares a AUFS del kernel de Linux para encapsular y aislar procesos, que es una tecnología de virtualización a nivel del sistema operativo. Dado que el proceso aislado es independiente del anfitrión y de otros procesos aislados, también se utiliza como contenedor. La implementación inicial de Docker se basa en LXC. Docker puede realizar automáticamente tareas repetitivas, como instalar y configurar el entorno de desarrollo, liberando así a los desarrolladores para que se centren en lo que es realmente importante: crear un software excepcional.

Los usuarios pueden crear y utilizar contenedores fácilmente y poner sus propias aplicaciones en el contenedor. Los contenedores también pueden realizar la administración de versiones, copiar, compartir y modificar, al igual que administrar código ordinario.

Docker pensó

Ligero: varios contenedores Docker que se ejecutan en una máquina pueden compartir el kernel del sistema operativo de esta máquina; se pueden iniciar rápidamente y solo ocupan muy pocos recursos informáticos y de memoria. La imagen se construye a través de la capa del sistema de archivos y comparte algunos archivos comunes. Esto puede reducir el uso del disco y descargar imágenes más rápido.

estándar

Los contenedores Docker se basan en estándares abiertos y pueden ejecutarse en todas las versiones principales de Linux, MIcrosoft Windows y cualquier infraestructura, incluidas máquinas virtuales, servidores bare metal y nubes.

La seguridad

El aislamiento que Docker brinda a las aplicaciones no se limita al aislamiento entre sí, sino que también es independiente de la infraestructura subyacente. Docker proporciona el aislamiento más fuerte de forma predeterminada, por lo que los problemas de aplicación son solo el problema de un solo contenedor, no de toda la máquina.

Por que usar Docker

1. Entorno operativo coherente: la imagen de Docker proporciona un entorno de ejecución completo, excepto el kernel, lo que garantiza la coherencia del entorno operativo de la aplicación, para que no vuelva a aparecer: este código no es un problema en mi máquina. Este tipo de problema

2. Tiempo de inicio más rápido: se puede lograr el tiempo de inicio de segundos o incluso milisegundos. Ahorre mucho tiempo de desarrollo, prueba e implementación.

3. Aislamiento: Evite los servidores públicos, los recursos se verán afectados fácilmente por otros usuarios.

4. Contracción elástica y expansión rápida: buena para lidiar con la presión del servidor centralizada y explosiva.

5. Migración conveniente: las aplicaciones que se ejecutan en una plataforma se pueden migrar fácilmente a otra plataforma sin preocuparse por los cambios en el entorno operativo, lo que hace que la aplicación no funcione con normalidad.

6. Entrega e implementación continuas: utilice Docker para lograr una integración, entrega e implementación continuas mediante la personalización de las imágenes de la aplicación.

Contenedor VS máquina virtual

Los contenedores y las máquinas virtuales tienen ventajas similares en el aislamiento y la asignación de recursos, pero sus funciones son diferentes. Debido a que la virtualización de contenedores se basa en el sistema operativo, no en el hardware, el contenedor es más fácil de trasplantar y más eficiente.

La tecnología de virtualización tradicional consiste en virtualizar un conjunto de hardware, ejecutar un sistema operativo completo en él y luego ejecutar los procesos de aplicación requeridos en el sistema; mientras que el proceso de aplicación en el contenedor se ejecuta directamente en el kernel del host y en el contenedor. no tiene su propio kernel, y no hay virtualización de hardware. Por lo tanto, los contenedores son más convenientes que las máquinas virtuales tradicionales.

Resumen de contenedor y máquina virtual (VM) 

 

 

 

 

 

Supongo que te gusta

Origin blog.csdn.net/weixin_42133481/article/details/114980606
Recomendado
Clasificación