¿Qué es exactamente Docker? hablar de mi simple comprensión

¿Por qué hay Docker?

Un producto va desde el desarrollo hasta el lanzamiento, desde el sistema operativo hasta el entorno operativo y la configuración de la aplicación. Como una colaboración entre desarrollo + operación y mantenimiento, debemos preocuparnos por muchas cosas. Este también es un problema que muchas empresas de Internet deben enfrentar, especialmente después de la iteración de varias versiones, la compatibilidad de los diferentes entornos de versión es muy importante para la operación. y personal de mantenimiento.

La configuración del entorno es tan problemática que si cambia una máquina, tiene que hacerlo todo de nuevo, lo que requiere mucho tiempo y mano de obra. Mucha gente está pensando, ¿se puede resolver el problema de manera fundamental y el software se puede instalar con el entorno?

Es decir, al instalar, copiar exactamente el entorno original. Los desarrolladores pueden usar Docker para eliminar el problema "funciona en mi computadora" cuando se codifica en colaboración.

La razón por la que Docker se ha desarrollado tan rápidamente también se debe a que ha brindado una solución estandarizada para esto.

Antes de configurar el entorno operativo de una aplicación en el servidor, debe instalar varios programas, como paquetes de controladores Java/tomcat/mysql/jdbc, etc., así como varios middleware mqtt, zookeeper, etc. ¿Configurar estas cosas? Sin mencionar que aún no es multiplataforma.

Si instalamos estos entornos en Windows, tenemos que reinstalarlos cuando lleguemos a Linux. Además, incluso si no se cruza el sistema operativo, es muy problemático trasplantar la aplicación a otro servidor con el mismo sistema operativo, lo que equivale a una implementación repetida.

Está bien tener algunos servidores. Si el líder organiza una tarea un día, los colegas de operación y mantenimiento deben implementar aplicaciones en 40 servidores, y cada uno debe reconfigurarse para crear un entorno. ¿No sería demasiado ocupado?

Suponiendo que haya un conjunto de cubos familiares configurados, que se puedan ejecutar y usar normalmente en cada servidor, será mucho más conveniente. Tradicionalmente se cree que después de la codificación, desarrollo y prueba del software, el resultado es el programa.

Para que estos programas se ejecuten sin problemas, el equipo de desarrollo también debe preparar archivos de implementación completos para que el equipo de operación y mantenimiento pueda implementar la aplicación. El desarrollo debe decirle claramente al equipo de implementación de operación y mantenimiento que use todos los archivos de configuración + todos los entornos de software.

Pero aun así, las fallas de implementación aún ocurren con frecuencia. El diseño de la imagen de Docker hace que Docker rompa con el viejo concepto del pasado. Excepto por el núcleo del sistema operativo a través de las imágenes, el entorno del sistema necesario para ejecutar la aplicación se empaqueta de abajo hacia arriba para lograr una operación multiplataforma perfecta de la aplicación de regreso a la parte superior.

El concepto básico de Docker

01 ¿Qué es Docker?

①Docker es un proyecto de código abierto en la nube basado en el lenguaje Go.

②El objetivo principal de Docker es "Crear, enviar y ejecutar cualquier aplicación, en cualquier lugar", para crear, instalar y ejecutar cualquier aplicación en cualquier plataforma.

Es decir, a través de la gestión del ciclo de vida de la construcción de la aplicación, como el empaquetado, la distribución, la implementación y la operación, la aplicación del usuario y su entorno operativo pueden "encapsularse una vez y ejecutarse en todas partes".

③El surgimiento de la tecnología de contenedores de Linux resuelve ese problema, y ​​Docker se desarrolla sobre la base de ello, ejecutando aplicaciones en contenedores Docker, y los contenedores Docker son consistentes en cualquier sistema operativo, lo que realiza multiplataforma, entre servidores.

Solo necesita configurar el entorno una vez y puede implementarlo en otra máquina con un solo clic, lo que simplifica enormemente la operación.

En una palabra: la tecnología de virtualización de contenedores que resuelve el problema del entorno operativo y el contenedor de software de configuración, facilita la integración continua y contribuye al lanzamiento general.

02 ¿Qué puede hacer Docker?

①Diferencias entre Docker y los métodos de virtualización tradicionales:

La tecnología de máquina virtual tradicional consiste en virtualizar un conjunto de hardware, ejecutar un sistema operativo completo en él y luego ejecutar el proceso de aplicación requerido en el sistema.

El proceso de aplicación en el contenedor se ejecuta directamente en el kernel de la máquina host. El contenedor no tiene su propio kernel y no hay virtualización de hardware, porque el contenedor es más liviano que la máquina virtual tradicional.

Cada contenedor está aislado entre sí y cada contenedor tiene su propio sistema de archivos. Los procesos entre contenedores no se afectarán entre sí y los recursos informáticos se pueden distinguir.

②Desventajas de las máquinas virtuales tradicionales:

Se ocupan muchos recursos, hay muchos pasos redundantes y el inicio es lento.

③Ventajas de Docker:

Ligero, velocidad de inicio rápida de segundo nivel.

Simple y fácil de usar.

Esquema de ejecución/implementación/empaquetado estándar y unificado.

La imagen admite la distribución incremental y es fácil de implementar.

Fácil de construir, adecuado para pruebas automatizadas e integración continua.

03 ¿Dónde puedo descargar Docker?

Sitio web oficial de Docker o sitio web chino de Docker, autoaprendizaje, la próxima versión de la comunidad está bien, es de uso gratuito.

04 Tres elementos de Docker

Imagen especular, contenedor, almacén, ¿cómo entender estos tres conceptos?

①Mirror es una plantilla de solo lectura, que se puede usar para crear contenedores Docker, y una imagen puede crear muchos contenedores.

②Un contenedor es una instancia creada por un espejo, que se puede iniciar, iniciar, detener y eliminar. Cada contenedor es una plataforma que está aislada entre sí y garantiza la seguridad. Puede pensar en un contenedor como una versión simplificada del entorno Linux.

③El almacén es un lugar donde los archivos de imágenes se almacenan de forma centralizada y existe una diferencia entre el almacén y el servidor de registro de almacén. A menudo hay varios almacenes almacenados en el servidor de registro de almacenes, y cada almacén contiene varias imágenes y cada imagen tiene una etiqueta diferente.

Los almacenes se dividen en almacenes públicos y almacenes privados. El almacén público más grande es https://hub.docker.com/, que almacena una gran cantidad de imágenes para que los usuarios las descarguen. Los almacenes públicos nacionales incluyen Alibaba Cloud, Netease Cloud, etc. esperar.

Docker en sí mismo es un contenedor que ejecuta un operador o un motor de administración. Empaquetamos la aplicación y las dependencias de configuración para formar un entorno operativo entregable. Este entorno operativo empaquetado es como un archivo de imagen. Solo a través de este archivo de imagen se puede generar un contenedor Docker.

El archivo de imagen se puede considerar como la plantilla del contenedor. Docker genera la instancia del contenedor de acuerdo con el archivo de imagen. El mismo archivo de imagen puede producir varias instancias de contenedor que se ejecutan al mismo tiempo.

La instancia de contenedor generada por el archivo de imagen es en sí misma un archivo y se convierte en un archivo de imagen;

Un contenedor ejecuta un servicio, cuando lo necesitamos, podemos crear una instancia de ejecución correspondiente a través del cliente Docker, que es nuestro contenedor;

En cuanto al almacenamiento, es un lugar donde se colocan un montón de imágenes. Podemos publicar las imágenes en el almacenamiento y sacarlas del almacenamiento cuando sea necesario.

Finalmente: El video tutorial de prueba de software completo a continuación ha sido organizado y cargado, y los amigos que lo necesiten pueden obtenerlo por sí mismos [Garantizado 100% gratis]

Documentación de la entrevista de prueba de software

Debemos estudiar para encontrar un trabajo bien remunerado. Las siguientes preguntas de la entrevista son los materiales de entrevista más recientes de empresas de Internet de primer nivel como Ali, Tencent y Byte, y algunos jefes de Byte han dado respuestas autorizadas. Termine este conjunto Los materiales de la entrevista creen que todo el mundo puede encontrar un trabajo satisfactorio.

Toda la adquisición de datos

Supongo que te gusta

Origin blog.csdn.net/wx17343624830/article/details/131326416
Recomendado
Clasificación