Recomendarle el mejor libro de Docker

Elegí un artículo sobre Docker esta mañana y creo que es necesario recomendar este libro a todos. "Introducción a Docker", ocupó el primer lugar entre los mejores libros de Docker en autoría de libros, ¿por qué no elegirlo?

Recomendarle el mejor libro de Docker

 

"Comprender Docker" tiene una calificación de 8.0 en Douban.

Recomendarle el mejor libro de Docker

 

Citando los comentarios de Douban:

Para mí, como un blanco puro, este libro es sin duda mi instructor técnico, ¡paso a paso de lo más superficial a lo más profundo! La mayoría de los ejemplos del libro se pueden ejecutar y, a menudo, encuentro formas de conectarme, como configurar la duplicación acelerada, que no se trata en este libro, y al configurar un clúster de enjambre, utilicé virtualbox y docker machine para crear un entorno de máquina multivirtual local ( La computadora es más acuosa). Al configurar el cliente ucp para que se conecte al demonio de la ventana acoplable, utilizo el nodo local como servidor y la máquina virtual como cliente, etc. Aunque el autor es muy claro, sigue siendo un gran problema si realmente lo hace . Hay varios errores obvios en el libro. Afortunadamente, no es difícil adivinar qué es correcto. En lo que respecta a la calidad de la traducción, ¡es absolutamente irrazonable! ¡La lectura es fluida y sin estrés! Mi propia red es una debilidad. Aprender Docker EE fue un poco difícil. Afortunadamente, persistí. Gracias nuevamente por tener un libro de este tipo que me llevó al camino de Docker. Me dio un tiempo de aprendizaje feliz. Aprender me da confianza y me hace aprender. Estoy satisfecho. (Colapsado)

Que es Docker

Para entender qué es Docker, es más fácil comenzar con una metáfora que con una explicación técnica, y esta metáfora de Docker es muy convincente. Docker originalmente se refiere a los trabajadores que mueven mercancías dentro o fuera de los barcos después de que atracan en el puerto. Las cajas y los artículos varían en tamaño y forma, y ​​los trabajadores portuarios experimentados pueden cargar manualmente las mercancías en los barcos de manera rentable, por lo que son muy populares (consulte la Figura 1-2). Contratar a alguien para que mueva las cosas no es barato, pero no hay otra opción.

Para las personas que trabajan en la industria del software, esto debería resultarles familiar. Se gasta mucho tiempo y energía colocando el software extraño en barcos de diferentes tamaños y lleno de otro software extraño, para que pueda venderse a usuarios u organizaciones comerciales en otros lugares.

La Figura 1-3 muestra cómo puede ahorrar tiempo y dinero al utilizar conceptos de Docker.

Recomendarle el mejor libro de Docker

 

Figura 1-2 Comparación de envío antes y después de contenedores estandarizados

Antes de la llegada de Docker, la cantidad de trabajo requerido para implementar software en diferentes entornos era enorme. Incluso si el software no se implementa en diferentes máquinas ejecutando scripts manualmente (muchas personas lo hacen), los usuarios tienen que lidiar con herramientas de administración de configuración que están a cargo de entornos que cambian rápidamente y consumen muchos recursos. Incluso si estas tareas están encapsuladas en máquinas virtuales, aún se necesita mucho tiempo para implementar estas máquinas virtuales, esperar a que se inicien y administrar la sobrecarga de recursos adicional que generan.

Con Docker, el trabajo de configuración está separado de la administración de recursos, mientras que el trabajo de implementación es trivial: ejecute Docker run y la imagen del entorno se desplegará y estará lista para ejecutarse, lo que consume menos recursos y está contenido, por lo que No interferirá con otros entornos.

Los lectores no necesitan preocuparse de si el contenedor se distribuirá a una máquina Red Hat, una máquina Ubuntu o una imagen de máquina virtual CentOS, siempre que haya Docker en él, no hay problema.

Recomendarle el mejor libro de Docker

 

Figura 1-3 Comparación de la entrega de software antes y después de usar Docker

Cuáles son los beneficios de Docker

Surgen varias preguntas prácticas importantes: ¿Por qué usar Docker y dónde se usa? La respuesta corta al "por qué" es: con un poco de esfuerzo, Docker puede ahorrar rápidamente a las empresas una gran cantidad de dinero. Algunos métodos (ciertamente no todos) se discutirán en las siguientes secciones. Hemos experimentado todos estos beneficios de primera mano en un entorno laboral real.

1. Reemplazar máquina virtual (VM)

Docker puede reemplazar las máquinas virtuales en muchas situaciones. Si los usuarios solo se preocupan por las aplicaciones, no por los sistemas operativos, pueden usar Docker en lugar de máquinas virtuales y dejar el sistema operativo para que otros lo consideren. Docker no solo es más rápido de iniciar que las máquinas virtuales, sino que también es más liviano durante la migración.Al mismo tiempo, gracias a su sistema de archivos jerárquico, es más fácil y rápido compartir cambios con otros. Además, está firmemente arraigado en la línea de comandos, que es muy adecuada para la creación de scripts.

2. Prototipo de software

Si desea experimentar el software rápidamente mientras evita la molestia de interferir con la configuración actual o configurar una máquina virtual, Docker puede proporcionar un entorno de espacio aislado en unos pocos milisegundos. Es difícil sentir el efecto de este tipo de liberación antes de experimentarlo por sí mismo.

3. Software empaquetado

Porque para los usuarios de Linux, las imágenes de Docker en realidad no son dependientes, por lo que son muy adecuadas para empaquetar software. Los usuarios pueden crear una imagen y asegurarse de que se pueda ejecutar en cualquier máquina Linux moderna, como Java, pero sin la necesidad de JVM.

4. Hacer posible la arquitectura de microservicios

Docker ayuda a descomponer un sistema complejo en una serie de partes componibles, lo que permite a los usuarios pensar en sus servicios de una manera más discreta. Los usuarios pueden reorganizar el software para que sus partes sean más fáciles de administrar y conectar sin afectar la situación general.

5. Modelado de redes

Dado que se pueden lanzar cientos (o incluso miles) de contenedores aislados en una sola máquina, modelar la red es muy sencillo. Esto es muy útil para probar escenarios del mundo real y cuesta poco.

6. Habilite la productividad de pila completa cuando esté fuera de línea

Debido a que todas las partes del sistema se pueden agrupar en un contenedor Docker, los usuarios pueden organizarlo y ejecutarlo en una computadora portátil para una oficina móvil, incluso sin conexión.

7. Reducir los gastos de depuración

Las negociaciones complejas entre diferentes equipos sobre la entrega de software son comunes en la industria. Personalmente, hemos experimentado innumerables discusiones de este tipo: bibliotecas rotas, dependencias problemáticas, actualizaciones implementadas incorrectamente o en el orden de ejecución incorrecto, tal vez incluso no implementadas en absoluto, errores que no se pueden reproducir, etc. Se estima que los lectores también lo han encontrado. Docker permite a los usuarios explicar claramente (incluso en forma de scripts) los pasos para depurar problemas en un sistema con atributos conocidos. Los errores y la reproducción del entorno se vuelven más fáciles y, por lo general, están separados del entorno host proporcionado.

8. Dependencias de software documentadas y puntos de contacto

Al utilizar un método estructurado para crear imágenes y prepararlas para la migración a diferentes entornos, Docker obliga a los usuarios a registrar claramente las dependencias del software desde un punto de partida básico. Incluso si el usuario no tiene la intención de usar Docker en todas partes, esta necesidad de documentación ayuda a instalar software en otros lugares.

9. Habilitar la entrega continua

La entrega continua (CD) es un paradigma de entrega de software basado en una canalización que reconstruye el sistema en cada cambio a través de un proceso automatizado (o semiautomático) y luego lo entrega al entorno de producción.

Dado que los usuarios pueden controlar con mayor precisión el estado del entorno de compilación, las compilaciones de Docker son más reproducibles y reproducibles que los métodos de compilación de software tradicionales. Facilitar la realización de la entrega continua. Al implementar un proceso de construcción reproducible centrado en Docker, tecnologías de entrega continua estándar como la implementación azul / verde (para mantener la "producción" y las implementaciones "más recientes" en el entorno de producción) y la implementación de Phoenix ( Phoenix, reconstruir todo el sistema cada vez que se lanza) se vuelve muy simple.

Los lectores ahora tienen una cierta comprensión de cómo puede ayudar Docker. Antes de entrar en un ejemplo real, comprendamos algunos conceptos básicos.

¿Por qué debería leer este libro y por qué debería preocuparse por Docker?

Docker está en todas partes hoy en día, este es un hecho indiscutible. A los desarrolladores les encanta y los ingenieros de operaciones también lo necesitan. Todos necesitan un conocimiento profundo de cómo crear y mantener aplicaciones en contenedores que cumplan con los requisitos de nivel de producción en entornos comerciales críticos. Este libro ayudará a los lectores a dominarlo.

Recomendarle el mejor libro de Docker

 

¿Docker solo está disponible para desarrolladores?

Para aquellos que piensan que Docker es la herramienta exclusiva para desarrolladores, me temo que deben estar preparados para subvertir sus percepciones.

Las aplicaciones en contenedores necesitan un lugar para ejecutarse, pero también necesitan a alguien que las administre. Si cree que solo los desarrolladores pueden administrarlo, está equivocado. De hecho, la operación y el mantenimiento deben construir y ejecutar una infraestructura Docker de alto rendimiento y nivel de producción. Para aquellos que se centran en el trabajo de operación y mantenimiento pero aún no dominan Docker, la vida puede no ser fácil. No se preocupe, este libro le ayudará a dominar Docker.

Catalogo detallado

Parte uno Descripción general de Docker 
Capítulo 1 El camino hacia el desarrollo de contenedores 2 
1.1 La vejez del atraso 2 
1.2 ¡Hola, VMware!
1.3 Insuficiencia de las máquinas virtuales 3 
1.4 ¡Hola, contenedor!
1.5 Contenedores Linux 3 
1.6 ¡Hola, Docker!
1.7 Contenedores de Windows 4 
1.8 Contenedores de Windows frente a contenedores de Linux 4 
1.9 Estado de los contenedores de Mac 5 
1.10 Kubernetes 5 
1.11 Resumen del
capítulo Capítulo 2 Acceso a Docker 7 
2.1 Docker: Introducción 7 
2. 2 Docker Company 7 
2.3 Motor de orquestación y tiempo de ejecución de Docker 8 
2.4 Proyecto de código abierto de Docker (Moby) 9 
2.5 Ecología de contenedores 10 
2.6 Plan de contenedor abierto 11 
2.7 Resumen de este capítulo 12 
Capítulo 3 Instalación de Docker 13 
3 .1 Docker para Windows (DfW) 13 
3.2 Docker para Mac (DfM) 17 
3.3 Instalación de Docker en Linux 19
3.4 Instalación de Docker  en Windows Server 2016 21 
3.5 Actualización de Docker Engine (Engine) 22 
3.5.1 Actualizar Docker CE en Ubuntu 16.04 23 
3.5.2 Actualizar Docker EE en Windows Server 2016 24 
3.6 Selección del controlador de almacenamiento de Docker 25 
3.6.1 Configuración del asignador de dispositivos 26 
3.6 .2 Permitir que Docker establezca direct-lvm automáticamente 26 
3.6.3 Configurar manualmente direct-lvm de Device Mapper 28 
3.7 Resumen de este capítulo 28 
Capítulo 4 Observación de Docker 29 
4.1 Perspectiva de operación y mantenimiento 29 
4.1.1 Duplicación 30 
4.1.2 Contenedor 31 
4.1.3 Conexión al contenedor en funcionamiento 34 
4.2 Perspectiva de desarrollo 35 
4.3 Resumen de este capítulo 38 
Parte II Tecnología Docker 
Capítulo 5 Motor Docker 40 
5.1 Introducción al motor Docker 40 
5.2 Explicación detallada del motor Docker 41 
5.2.1 Deshacerse de LXC 41 
5.2.2 Abandonar el gran y completo demonio Docker 42 
5.2.3 El impacto del Open Container Project (OCI) 43 
5.2.4 runc 43 
5.2.5 contenedord 43 
5.2.6 Iniciar un nuevo contenedor (ejemplo) 44 
5.2.7 Ventajas significativas de este modelo 45 
5.2.8 shim 45 
5.2.9 Implementación en Linux 46 
5.2.10 El rol del daemon 46 
5.3 Resumen de este capítulo 46 
Capítulo 6 Duplicación de Docker 48 
6.1 Introducción a la duplicación de Docker 48 
6.2 Docker mirroring-detail 48 
6.2.1 Espejos y contenedores 49 
6.2.2 Los espejos suelen ser pequeños 49 
6.2.3 Tirar de espejos 49 
6.2.4 Denominación de espejos 51 
6.2.5 Servicio de almacén de espejos 51 
6.2.6 Nomenclatura y etiquetado
de imágenes 52  6.2.7 Etiquetado de varias imágenes 54 
6.2.8 Filtrado de la salida de la imagen
de Docker ls 55  6.2.9 Búsqueda de Docker Hub a través de CLI 56 
6.2 .10 Duplicación y creación de capas 57 6. 
2.11 Capa de duplicación compartida 60
6. 2.12 Extracción de la duplicación basada en el resumen 61 
6. 2.13 Valor hash de duplicación  (resumen) 63 
6. 2.14 Duplicación con arquitectura multicapa 63 
6. 2.15 Eliminar imagen 65 
6.3 Espejo — Comando 67 
6.4 Resumen de este capítulo 67 
Capítulo 7 Contenedor Docker 68 
7.1 Introducción al
contenedor Docker 68  7.2 Explicación detallada del contenedor Docker 69 
7.2.1 Contenedor vs máquina virtual 69 
7.2.2 Sobrecarga de la máquina virtual 71 
7.2.3 Ejecución de contenedor 71 
7.2.4 Comprobar el demonio de Docker 71 
7.2.5 Iniciar un contenedor simple 72 
7 .2.6 Proceso del contenedor 74 
7.2.7 Ciclo de vida del contenedor 75 
7.2.8 Detener el contenedor correctamente 78 
7.2.9 Usar la estrategia de reinicio para la autorreparación del contenedor 78  7.
2.10 Ejemplo de servidor web 80 
7 .2.11 Ver detalles del contenedor 82
7.2.12 Limpieza  rápida 82 
7.3 Contenedor — Comando 83 
7.4 Resumen de este capítulo 84 
Capítulo 8 Contenedores de
aplicaciones 85  8.1 Contenedores de aplicaciones — Introducción 85 
8.2 Explicación detallada de la contenedorización de la aplicación 86 
8.2.1 Containerización de una sola aplicación 86 
8.2.2 Construcción de varias etapas en un entorno de producción 95 
8.2.3 Mejores prácticas 98 
8.3 Comando de contenedorización de la aplicación 100 
8.4 Resumen de este capítulo 101 
Capítulo 9 Implementación de aplicaciones con Docker Compose 102
9.1 Implementación de aplicaciones con  Docker Compose: Introducción 102 
9.2 Implementación de aplicaciones con Docker Compose: explicación detallada 103 
9.2.1 Antecedentes de Docker Compose 103 
9.2.2 Instalar Docker Compose 103 
9.2.3 Compose archivos 105 
9.2.4 Usar Docker Compose para implementar aplicaciones 107 
9.2.5 Usar Docker Compose para administrar aplicaciones 110 
9.3 Usar Docker Compose para implementar aplicaciones: comando 115 
9.4 Resumen de este capítulo 116 
Capítulo 10 Docker Swarm 117 
10.1 Docker Swarm — Introducción 117 
10.2 Docker Swarm — Detallado 118
10.2.1 Una introducción preliminar a Swarm 118 
10.2.2 Creación de  un clúster Swarm seguro 119 
10. 2.3 Servicio Swarm 125 
10.2.4 Solución de problemas 133 
10.3 Docker Swarm — Comando 134 
10.4 Resumen de este capítulo 135 
Capítulo 11 Red Docker 136 
11.1 Red Docker — Introducción 136 
11.2 Red Docker — Detallada 137 
11.2.1 Teoría básica 137 
11.2.2 Red puenteada de una sola máquina 140 
11.2.3 Red superpuesta de múltiples máquinas 146 
11.2.4 Acceso a la red existente 146 
11.2.5 Descubrimiento de servicios 152 
11.2. 6 Red de entrada 153 
11.3 Docker Network-Command 156 
11.4 Resumen de este capítulo 156 
Capítulo 12 Docker Overlay Network 157 
12. 1 Docker Overlay Network-Introducción 157 
12.2 Docker Overlay Network-Explicación detallada 157 
12.2.1 Construir y fusionar en modo Swarm Prueba de la red de superposición de Docker 158 
12.2.2 Principio de funcionamiento 164 
12.3 Comandos de red de superposición de Docker 168 
12.4 Resumen del
capítulo 168  Capítulo 13 Volúmenes y datos persistentes 169 
13.1 Volúmenes y datos persistentes: Introducción 169 
13. 2 Volúmenes y datos persistentes detallados 169 
13.2.1 Contenedores y datos no persistentes 170 
13.2.2 Contenedores y datos persistentes 170 
13.2.3 Compartir almacenamiento entre nodos de clúster 175 
13.3 Volúmenes y persistencia Data-Command 176 
13.4 Resumen del capítulo 176 
Capítulo 14 Usar Docker Stack para implementar aplicaciones 177 
14.1 Usar Docker Stack para implementar aplicaciones: Introducción 177 
14.2 Usar Docker Stack para implementar aplicaciones: detallado 178 
14.2.1 Aplicaciones simples 178 
14 .2.2 Análisis en profundidad de los archivos de pila 180 
14.2.3 Implementación de aplicaciones 186 
14.2.4 Aplicaciones de gestión 191 
14.3 Utilice Docker Stack para implementar comandos de aplicaciones 193 
14.4 Resumen de este capítulo 194 
Capítulo 15 Seguridad de Docker 195 
15. 1 Introducción a la seguridad de Docker 195 15. 2 
Explicación detallada de la seguridad de Docker 196 
15.2.1 Tecnología de seguridad de Linux 197 
15. 2.2 Tecnología de seguridad de la plataforma Docker 201 
15.3 Resumen de este capítulo 212 
Capítulo 16 Herramientas de Enterprise Edition 213 
16.1 Herramientas de Enterprise Edition: Introducción 213 
16.2 Herramientas de Enterprise Edition: Explicación detallada 214 
16.2.1 Docker EE Engine 214 
16. 2.2 Plano de control universal de Docker (UCP) 216 
16.2.3 Servicio de repositorio de imágenes de confianza de Docker (DTR) 227 
16.3 Resumen del
capítulo 233  Capítulo 17 Características empresariales 234 
17.1 Características empresariales: introducción 234 
17. 2 Funciones de nivel empresarial: detalladas 234 
17.2.1 Control de acceso basado en roles (RBAC) 235 
17.2.2 Active Directory integrado 239 
17.2.3 Mecanismo de confianza de contenido de Docker (DCT) 241 
17.2.4 Configurar Docker Servicio de repositorio de imágenes de confianza (DTR) 243 
17.2.5 Utilizar el servicio de repositorio de imágenes de confianza de Docker 244 
17.2.6 Actualizar imagen 247 
17.2.7 HTTP Routing Mesh (HRM) 250 
17.3 Resumen de este capítulo 253 
Apéndice A Comunicación entre Secure Client y Daemon 255 
Apéndice B Examen DCA 265 
Apéndice C Extensión 270

Supongo que te gusta

Origin blog.csdn.net/epubit17/article/details/108041623
Recomendado
Clasificación