Ejecutando tu Primer Contenedor Docker
Ahora que tienes Docker instalado en tu sistema, exploremos cómo ejecutar tu primer contenedor Docker.
Ejecutando un Contenedor
Para ejecutar un contenedor Docker, necesitarás usar el comando docker run. Este comando extraerá la imagen especificada del registro Docker (si aún no está presente en tu sistema) e iniciará un nuevo contenedor basado en esa imagen.
Empecemos ejecutando un simple contenedor "hello world":
docker run hello-world
Este comando descargará la imagen hello-world del registro Docker Hub y ejecutará un contenedor basado en esa imagen. El contenedor mostrará un mensaje "Hello from Docker!" y luego se cerrará.
Interactuando con Contenedores
Puedes interactuar con contenedores en ejecución utilizando varios comandos de Docker:
docker ps: Lista todos los contenedores en ejecución.
docker stop <container_id>: Deten un contenedor en ejecución.
docker start <container_id>: Inicia un contenedor detenido.
docker exec -it <container_id> /bin/bash: Abre un shell dentro de un contenedor en ejecución.
Por ejemplo, para abrir un shell dentro de un contenedor en ejecución, puedes usar el siguiente comando:
docker exec -it < container_id > /bin/bash
Esto te dará un indicador de shell dentro del contenedor, permitiéndote explorar e interactuar con el sistema de archivos del contenedor y los procesos en ejecución.
Creando e Iniciando Imágenes Personalizadas
Además de ejecutar imágenes preconstruidas, también puedes crear tus propias imágenes Docker personalizadas. Para ello, necesitarás crear un Dockerfile, que es un archivo de texto que contiene instrucciones para construir la imagen.
Aquí hay un ejemplo simple de un Dockerfile:
FROM ubuntu:22.04
RUN apt-get update && apt-get install -y nginx
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Este Dockerfile creará una nueva imagen basada en la imagen base Ubuntu 22.04, instalará el servidor web Nginx, expondrá el puerto 80 y iniciará el servicio Nginx cuando se ejecute el contenedor.
Para construir la imagen, puedes usar el comando docker build:
docker build -t my-nginx-app .
Esto creará una nueva imagen con la etiqueta my-nginx-app.
Para ejecutar el contenedor basado en esta imagen, puedes usar el comando docker run:
docker run -d -p 80:80 my-nginx-app
Esto iniciará un nuevo contenedor, mapeará el puerto 80 del host al puerto 80 en el contenedor y ejecutará el servidor web Nginx.
¡Felicidades! Ahora has aprendido a ejecutar tu primer contenedor Docker e interactuar con él. En los siguientes pasos, puedes explorar conceptos más avanzados de Docker, como crear tus propias imágenes personalizadas, gestionar redes de contenedores e implementar aplicaciones multicontenedor.