Experiencia práctica de Docker (2) Construcción de espejos, almacén de espejos, compresión, importación

inserte la descripción de la imagen aquí

Escriba un artículo tres veces, elimine las impurezas y refine los productos secos. Esta es una serie de blogs con temperatura.

Construya la imagen: docker commit

Una vez que la máquina virtual en ejecución falla, muchas operaciones en ella se invalidarán y tendrá que comenzar todo de nuevo. Pero siempre hay personas inteligentes, por lo que las máquinas virtuales pueden tomar instantáneas.
Luego, al usar el contenedor, si el contenedor falla, no significa que se pierda más de la mitad del trabajo anterior (cuánto queda, el próximo artículo explicará el volumen de almacenamiento). Esto es como si construyera un tridimensional sistema basado en docker El maestro y el clúster redis de tres esclavos, tan pronto como docker se apague, mi clúster se reconstruirá.

Crear una imagen es tan simple como una línea de comando y no requiere red.

docker commit -m="镜像描述" -a="作者信息" 容器id 镜像名:版本号

Por supuesto, hay otras opciones para elegir, si es necesario: docker commit -h.


pequeños consejos

¿Por qué dice que se debe hacer una copia de seguridad diligente de los contenedores de la ventana acoplable, porque el riesgo de que se eliminen los contenedores de la ventana acoplable por error es mayor que el de VMware, que también es la razón por la que solo usé Ctrl + p + q para salir de la ventana acoplable en el anterior? artículo y sale incorrectamente Cerrará directamente todo el contenedor por usted.

Imagine una imagen: está revelando en su contenedor "Cadena de hierro" y, en este momento, una persona miope operó mal al salir y todo el contenedor estaba cerrado para usted. Oh, emocionante, ¿eliges abofetearlo, o abofetearlo, o abofetearlo?

Si no hay respaldo, entonces es inútil que lo venzas varias veces.


Capas de imágenes y sistemas de archivos de unión

Sin mencionar, echemos un vistazo a una imagen en el artículo anterior, cuando se ejecuta redis:
inserte la descripción de la imagen aquí

Mira, hay cinco tiradas completas. ¿Qué significa esto? La descripción es descargar cinco cosas y finalmente deletrear un redis.

¿Cuál es el beneficio de esto? Si los bloques de construcción están configurados, ¿por qué no se fusionan? Piensa un poco.

UnionFS (Union File System) : Union File System (UnionFS) es un sistema de archivos en capas, liviano y de alto rendimiento que admite cambios en el sistema de archivos como una confirmación para apilar capa por capa y puede combinar diferentes Los directorios se montan bajo el mismo sistema de archivos virtual (unir varios directorios en un solo sistema de archivos virtual). El sistema de archivos Union es la base de las imágenes de Docker. Las imágenes se pueden heredar a través de capas. Basándose en la imagen base (sin imagen principal), se pueden crear varias imágenes de aplicaciones específicas.


Principio de carga de imágenes de Docker

Si no lo entiendes una vez, puedes leerlo dos veces.

inserte la descripción de la imagen aquí

bootfs (sistema de archivos de arranque) incluye principalmente el gestor de arranque y el kernel. El gestor de arranque sirve principalmente para arrancar y cargar el kernel. Cuando se inicia Linux, cargará el sistema de archivos bootfs. La capa inferior de la imagen de Docker es el sistema de archivos de arranque bootfs. Esta capa es la misma que nuestro sistema Linux/Unix típico y contiene el cargador de arranque y el kernel. Cuando se carga el arranque, todo el kernel está en la memoria. En este momento, el derecho a usar la memoria se ha transferido del bootfs al kernel, y el sistema también descargará el bootfs.

rootfs (sistema de archivos raíz), además de bootfs. Contiene directorios y archivos estándar como /dev, /proc, /bin, /etc en un sistema Linux típico. rootfs es una variedad de diferentes distribuciones de sistemas operativos, como Ubuntu, Centos, etc.

Para un sistema operativo optimizado, el rootfs puede ser muy pequeño y solo necesita incluir los comandos, las herramientas y las bibliotecas de programas más básicos, porque la capa inferior usa directamente el kernel del host y solo necesita proporcionar el rootfs. Se puede ver que para diferentes distribuciones de Linux, el bootfs es básicamente el mismo, y el rootfs será diferente, por lo que diferentes distribuciones pueden compartir el bootfs.

inserte la descripción de la imagen aquí

La capa de imagen de Docker es de solo lectura y la capa de contenedor se puede escribir. Cuando se inicia el contenedor, se carga una nueva capa grabable encima de la imagen. Esta capa a menudo se denomina "capa contenedora", y todo lo que se encuentra debajo de la "capa contenedora" se denomina "capa de imagen". Todos los cambios en el contenedor, ya sea agregar, eliminar o modificar archivos, solo ocurren en la capa del contenedor.


Repositorio de imágenes && empujar imagen al repositorio

Cuando llegue al trabajo, su mentor le enseñará cómo usar el repositorio espejo de su empresa.

El comando para enviar la imagen al almacén es: docker push image name: [tags]

Sin embargo, el nombre del espejo aquí tendrá algunos nombres de dominio, que están relacionados con el almacén espejo. Los diferentes almacenes tendrán diferentes nombres de dominio. Generalmente, el manual del almacén espejo lo presentará, si no hay introducción, puede preguntarle a su tutor o colegas.


Imagen comprimida: ventana acoplable guardar

Además de enviar la imagen al repositorio remoto, hay otra forma de guardar la imagen, que es empaquetar la imagen en un paquete comprimido.
Por eso no hablo de repositorios espejo.

Generalmente, el comando de imagen comprimida que ve en Internet es docker save 镜像名:版本号el mismo, por lo que el archivo empaquetado seguirá siendo demasiado grande.
La primera tarea de mi pasantía es empaquetar la imagen de la ventana acoplable. Hice esto al principio, pero antes de empaquetarlo todo, descubrí que el espacio estaba casi ocupado. Así que recurrí a mi mentor, quien me dio una orden:

docker save xxx:yyy | gzip -9 > zzzzz.tar.gz

Déjame intentarlo de nuevo para ver el tamaño.

Sin mencionar que es mi mentor, ¡tiene experiencia! ! !

Las prácticas casi terminan, mi tutor es muy amable conmigo, esto es la envidia de mis dos amigos, jaja.


Importar imagen: carga docker

La imagen se comprimió anteriormente, para importarla aquí, de lo contrario, ¿por qué comprimirla?

El comando de importación también es simple:

docker load < 镜像名.tar.gz

Después de importar:

docker images | grep xxxxx

Olvidé traer grep en la publicación anterior. Hay tantas imágenes de espejo, si realmente quieres girarlas una por una, se estima que los ojos de mi perro de aleación de titanio estarán cansados ​​​​y ciegos. Este truco también lo enseña mi tutor.

Supongo que te gusta

Origin blog.csdn.net/qq_43762191/article/details/124213403
Recomendado
Clasificación