Conceptos básicos e instalación de Docker
Uno, descripción general de Docker
1.Introducción a Docker
- Docker es una "máquina virtual" ligera
- Herramientas de código abierto para ejecutar aplicaciones en contenedores de Linux
- Docker es un motor contenedor de aplicaciones de código abierto que permite a los desarrolladores empaquetar sus aplicaciones y paquetes dependientes en una imagen portátil y luego publicarla en cualquier máquina Linux o Windows popular, que también se puede virtualizar. Los contenedores utilizan el mecanismo de la caja de arena por completo y no habrá interfaces entre ellos.
- Nota: La máquina física debe tener un kernel 3.8 o superior para admitir Docker
2.Concepto básico de Docker
Docker se compone de tres partes, a saber, imagen (imagen), contenedor (contenedor) y almacén (repositorio).
- Una imagen de imagen de la
ventana acoplable es una plantilla de solo lectura. Por ejemplo, una imagen puede contener un centos completo, que solo instala apache u otras aplicaciones de usuario. La imagen se puede usar para crear un contenedor de la ventana acoplable. Además, la ventana acoplable proporciona una mecanismo simple para crear un espejo o actualizar un espejo existente, los usuarios pueden incluso descargar un espejo listo para usar directamente de otros y usarlo directamente - Contenedor
Docker utiliza contenedores para ejecutar aplicaciones. Los contenedores ejecutan instancias creadas a partir de imágenes espejo. Se pueden iniciar, iniciar, detener y eliminar. Cada contenedor está aislado entre sí, lo que garantiza una plataforma segura. Puede considerar los contenedores como necesarios. Dar una versión simple del entorno de Linux (incluidos los permisos de usuario raíz, el espacio de espejo, el espacio de usuario y el espacio de red, etc.) y ejecutar aplicaciones en él - El almacén de repositorio
es las vicisitudes del almacenamiento centralizado de archivos espejo. El registro es el servidor maestro-esclavo del almacén. De hecho, hay varios almacenes almacenados en el servidor de registro de referencia. Cada almacén contiene múltiples espejos y cada espejo tiene un etiqueta diferente (etiqueta) Hay
dos tipos de almacenes, almacenes públicos de referencia y almacenes privados. El almacén público más grande es docker Hub, que almacena una gran cantidad de imágenes para los usuarios la próxima semana. El grupo de docker doméstico. El concepto de almacén aquí es similar a Git, y el registro puede entenderse como servicios de alojamiento como github.
3.Escenario de aplicación de Docker
Web 应用的自动化打包和发布。
自动化测试和持续集成、发布。
在服务型环境中部署和调整数据库或其他的后台应用。
从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。
4. Comandos de uso común
Docker build 创建镜像
Docker run 利用镜像运行容器
Docker image 关于镜像的一系列操作
Docker pull 从镜像仓库下载镜像到本地仓库
Docker push 上传镜像到镜像仓库
Docker container 执行关于容器的一系列操作
Docker stats 实时监控该节点容器的资源使用情况
Dos, arquitectura acoplable
- El framework Docker se compone principalmente de cinco módulos: Docker Client, Docker Daemon, Docker Registry, Driver y Docker Container, además de dos módulos auxiliares, Graph y Libcontainer.
- Cliente Docker: los usuarios se comunican con Docker Daemon a través del Cliente Docker y utilizan la línea de comandos para enviar solicitudes, como la creación de imágenes y la ejecución de contenedores.
- Docker Daemon: Docker Daemon es un proceso del sistema que reside en segundo plano en la arquitectura de Docker y acepta y procesa las solicitudes enviadas por Docker Client. El demonio inicia un servidor en segundo plano, y el servidor es responsable de aceptar la solicitud enviada por el cliente Docker; luego, a través del enrutamiento y envío, encuentra el controlador correspondiente para ejecutar la solicitud.
- Docker Registry: un repositorio para almacenar imágenes de contenedores.
- Controlador: el controlador es el módulo de controlador en la arquitectura de Docker. A través del controlador del controlador, Docker puede personalizar el entorno de ejecución del contenedor de Docker. Contiene el controlador graphdriver que administra la imagen del contenedor, el controlador networkdriver que configura el entorno de red en el contenedor y el execdriver se utiliza para crear y mantener el contenedor.
- Contenedor de Docker: el contenedor específico que ejecuta la aplicación es la entidad de entrega del servicio de contenedor.
- El proceso de ejecución general es: el usuario envía una solicitud al Docker Daemon a través de la línea de comando en el Docker Client. Una vez que el servidor en el Docker Daemon recibe la solicitud, el motor creará una tarea de trabajo y ejecutará diferentes tareas llamando a cada controlador. del módulo del controlador. Por ejemplo, si necesita un espejo, puede llamar a graphdriver para descargar el espejo desde el almacén espejo. Al crear un contenedor, también debe llamar a los otros dos controladores para configurar la red y crear y mantener el envase. Finalmente, se genera el contenedor en ejecución o se carga la imagen en el almacén espejo, etc.
Tres, instalación de Docker
1. Instalar dependencias
yum install -y yum-utils device-mapper-persistent-data lvm2
2. Configure los recursos de imágenes de Alibaba Cloud
cd /etc/yum.repos.d/
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3. Instale docker-ce
#安装社区版
yum install -y docker-ce
4. Encienda la ventana acoplable y configúrela para que se inicie automáticamente después del inicio.
#关闭防火墙,关闭核心防护
systemctl stop firewalld
setenforce 0
vi /etc/selinux/config
SELINUX=disabled
systemctl start docker
systemctl enable docker
5. Aceleración del espejo
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://4pg53plw.mirror.aliyuncs.com"]
}
EOF
##镜像加速需要去阿里云上查找
systemctl daemon-reload
systemctl restart docker
5. Optimización de la red
vi /etc/sysctl.conf
net.ipv4.ip_forward=1
sysctl -p
systemctl restart docker
systemctl restart network