LinuxParty
En esta serie de artículos, analizaremos Docker , que es una herramienta de virtualización liviana de código abierto que se ejecuta en el nivel superior del sistema operativo, lo que permite a los usuarios crear, ejecutar e implementar aplicaciones, encapsuladas en contenedores pequeños.
Se ha demostrado que este tipo de contenedores Linux son rápidos, portátiles y seguros. Los procesos que se ejecutan en un contenedor Docker siempre están aislados del host principal, lo que evita la manipulación externa.
Este tutorial proporciona un punto de partida sobre cómo instalar Docker, crear y ejecutar contenedores Docker en CentOS/RHEL 8/7 , pero apenas roza la superficie de Docker.
Paso 1: Instalar y configurar Docker
1. Las versiones anteriores de Docker se llamaban docker o docker-engine ; si las tiene instaladas, debe desinstalarlas antes de instalar una versión más nueva de docker-ce .
# yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
2. Para instalar la última versión de Docker Engine, debe configurar el repositorio de Docker e instalar el paquete yum-utils para habilitar el repositorio estable de Docker en el sistema.
# yum install -y yum-utils # yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
3. Ahora instale la versión más nueva de docker-ce desde el repositorio de Docker y conténtela manualmente, porque debido a algunos problemas, Red Hat bloqueó la instalación de containerd.io > 1.2.0-3.el7
, que es una dependencia de docker-ce .
# yum install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm # yum install docker-ce docker-ce-cli
4. Una vez instalado el paquete Docker, inicie el demonio, verifique su estado y habilítelo en todo el sistema utilizando los siguientes comandos:
# systemctl start docker # systemctl status docker # systemctl enable docker
Comprobar el estado de Docker
5. Por último, ejecute una imagen de prueba del contenedor para verificar si Docker funciona correctamente, emitiendo el siguiente comando:
# docker run hello-world
Si puede ver el mensaje a continuación, entonces todo está en el lugar correcto.
Ejemplo de salida
¡Hola desde Docker! Este mensaje muestra que su instalación parece estar funcionando correctamente. Para generar este mensaje, Docker realizó los siguientes pasos: 1. El cliente Docker se puso en contacto con el demonio Docker. 2. El demonio Docker extrajo la imagen "hello-world" del Docker Hub. (amd64) 3. El demonio Docker creó un nuevo contenedor a partir de esa imagen que ejecuta el ejecutable que produce la salida que estás leyendo actualmente. 4. El demonio Docker transmitió esa salida al cliente Docker, que la envió. a su terminal. Para probar algo más ambicioso, puedes ejecutar un contenedor de Ubuntu con: $ docker run -it ubuntu bash Comparta imágenes, automatice flujos de trabajo y más con un ID de Docker gratuito: https://hub.docker.com/ Para más ejemplos e ideas, visite: https://docs.docker.com/get-started/
6. Ahora, puedes ejecutar algunos comandos básicos de Docker para obtener información sobre Docker:
Para obtener información sobre Docker en todo el sistema
# docker info
Comprobar información de Docker
Para la versión Docker
# docker version
Comprobar la versión de Docker
7. Para obtener una lista de todos los comandos Docker disponibles, escriba docker en su consola.
# docker
Lista de comandos de Docker
Paso 2: Descargar una imagen de Docker
8. Para iniciar y ejecutar un contenedor Docker, primero se debe descargar una imagen desde Docker Hub en el host. Docker Hub ofrece muchas imágenes gratuitas desde sus repositorios.
Para buscar una imagen de Docker, por ejemplo en Ubuntu, ejecute el siguiente comando:
# docker search ubuntu
Búsqueda de imágenes de Ubuntu en Docker
9. Una vez que haya decidido qué imagen desea ejecutar según sus necesidades, descárguela localmente ejecutando el siguiente comando (en este caso, se descarga y utiliza una imagen de Ubuntu ):
# docker pull ubuntu
Descargar imagen Docker para Ubuntu
10. Para enumerar todas las imágenes de Docker disponibles en su host, emita el siguiente comando:
# docker images
Lista de imágenes de Docker
11. Si ya no necesita una imagen de Docker y desea eliminarla del host, emita el siguiente comando:
# docker rmi ubuntu
Eliminar imagen de Docker
Paso 3: Ejecutar un contenedor Docker
Cuando se ejecuta un comando en una imagen, se obtiene básicamente un contenedor. Una vez que finaliza el comando que se está ejecutando en el contenedor, este se detiene (se obtiene un contenedor que no se está ejecutando o que ha salido). Si se vuelve a ejecutar otro comando en la misma imagen, se crea un nuevo contenedor y así sucesivamente.
Todos los contenedores creados permanecerán en el sistema de archivos del host hasta que usted elija eliminarlos mediante el docker rm
comando.
12. Para crear y ejecutar un contenedor, es necesario ejecutar un comando en una imagen descargada, en este caso, Ubuntu , por lo que un comando básico sería mostrar el archivo de la versión de distribución dentro del contenedor usando el comando cat , como en el siguiente ejemplo:
# docker run ubuntu cat /etc/issue
Ejecutar contenedores Docker
El comando anterior se divide de la siguiente manera:
# docker run [imagen local] [comando para ejecutar en el contenedor]
13. Para ejecutar uno de los contenedores nuevamente con el comando que se ejecutó para crearlo, primero debe obtener el ID del contenedor (o el nombre generado automáticamente por Docker) emitiendo el siguiente comando, que muestra una lista de los contenedores en ejecución y detenidos (no en ejecución):
# docker ps -l
Lista de contenedores Docker en ejecución
14. Una vez obtenido el ID del contenedor, puedes iniciarlo nuevamente con el comando que se utilizó para crearlo, emitiendo el siguiente comando:
# docker start 923a720da57f
Aquí, la cadena 923a720da57f
representa el ID del contenedor .
Iniciar contenedores Docker
15. En caso de que el contenedor esté en estado de ejecución, puede obtener su ID mediante la emisión de docker ps
un comando. Para detener el contenedor en ejecución, emita docker stop
un comando especificando el ID del contenedor o el nombre generado automáticamente.
# docker stop 923a720da57f O# docker stop cool_lalande#docker ps
Detener los contenedores Docker
16. Una alternativa más elegante para no tener que recordar el ID del contenedor sería asignar un nombre único para cada contenedor que crees utilizando la --name
opción en la línea de comandos, como en el siguiente ejemplo:
# docker run --name ubuntu20.04 ubuntu cat /etc/issue
Agregar nombre al contenedor Docker
17. Luego, usando el nombre que le asignaste al contenedor, puedes manipular el contenedor ( start , stop , remove , top , stats ) aún más simplemente direccionando su nombre, como en los siguientes ejemplos:
# docker start ubuntu20.04 # docker stats ubuntu20.04 # docker top ubuntu20.04
Tenga en cuenta que algunos de los comandos anteriores podrían no mostrar ningún resultado si finaliza el proceso del comando que se utilizó para crear el contenedor. Cuando finaliza el proceso que se ejecuta dentro del contenedor, este se detiene.
Paso 4: Ejecutar una sesión interactiva en un contenedor
18. Para conectarse de forma interactiva a una sesión de shell de contenedor y ejecutar comandos como lo haría en cualquier otra sesión de Linux, emita el siguiente comando:
# docker run -it ubuntu bash
Iniciar el shell interactivo del contenedor Docker
El comando anterior se divide de la siguiente manera:
-i
Se utiliza para iniciar una sesión interactiva.-t
Asigna un TTY y adjunta stdin y stdout.ubuntu
Es la imagen que usamos para crear el contenedor.bash
(o /bin/bash ) es el comando que estamos ejecutando dentro del contenedor de Ubuntu.
19. Para salir y volver al host desde la sesión del contenedor en ejecución, debe escribir exit
el comando. El comando de salida finaliza todos los procesos del contenedor y lo detiene.
# exit
20. Si ha iniciado sesión de forma interactiva en el indicador de la terminal del contenedor y necesita mantener el contenedor en estado de ejecución pero salir de la sesión interactiva, puede salir de la consola y regresar a la terminal del host presionando las teclas Ctrl+p
y Ctrl+q
.
Mantener activa la sesión de Docker Shell
21. Para volver a conectarse al contenedor en ejecución, necesita el ID o el nombre del contenedor . Ejecute docker ps
el comando para obtener el ID o el nombre y, luego, ejecute docker attach
el comando especificando el ID o el nombre del contenedor , como se ilustra en la imagen anterior:
# docker attach <id del contenedor>
22. Para detener un contenedor en ejecución desde la sesión del host, emita el siguiente comando:
# docker kill <id del contenedor>
Eso es todo sobre la manipulación básica de contenedores. En el próximo tutorial, analizaremos cómo guardar, eliminar y ejecutar un servidor web en un contenedor Docker.
-
Docker
- 11 herramientas Docker imprescindibles para simplificar tu flujo de trabajo
- DistroBox: ejecute cualquier distribución de Linux dentro de la terminal de Linux
- Instalar Docker y aprender a manipular contenedores básicos en CentOS y RHEL
- Cómo administrar contenedores usando Podman y Skopeo en RHEL 8
- Docker: la plataforma para la virtualización de nueva generación
- Cómo monitorear contenedores Docker con la herramienta de monitoreo Zabbix
- Instalar Docker en Windows 10 y 11
- Linux y Kubernetes: Al servicio de los objetivos comunes de las empresas
- Mirantis adquiere Docker Enterprise
- Configurar Jenkins en Docker
- Cómo configurar un servidor web Apache simple en un contenedor Docker
- Chuleta de Docker para Administradores de Sistemas
- Cómo conectar los contenedores Docker y mostrarlos en la red
- Cómo gestionar contenedores Docker
- Cómo buscar imágenes docker y lanzar un contenedor