Preparar un proyecto simple de Docker Compose
En este paso, prepararemos un proyecto simple de Docker Compose. Como Docker Compose no viene preinstalado en el entorno de LabEx, primero lo instalaremos. Docker Compose es una herramienta para definir y ejecutar aplicaciones Docker con múltiples contenedores. Con Compose, usas un archivo YAML para configurar los servicios de tu aplicación. Luego, con un solo comando, creas e inicias todos los servicios desde tu configuración.
Primero, instalemos Docker Compose. Descargaremos el binario de Docker Compose y lo haremos ejecutable.
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Ahora, verifiquemos la instalación comprobando la versión de Docker Compose.
docker-compose --version
Deberías ver una salida similar a Docker Compose version v2.20.2
.
A continuación, crearemos un proyecto simple de Docker Compose. Crearemos un directorio para nuestro proyecto y luego un archivo docker-compose.yml
dentro de él. Este archivo definirá un servicio simple usando la imagen ubuntu
.
mkdir ~/project/my-compose-app
cd ~/project/my-compose-app
nano docker-compose.yml
En el editor nano
, pega el siguiente contenido en el archivo docker-compose.yml
:
version: "3.8"
services:
my-service:
image: ubuntu:latest
command: tail -f /dev/null
Presiona Ctrl + X
, luego Y
, y Enter
para guardar y salir del editor.
Analicemos el archivo docker-compose.yml
:
version: '3.8'
especifica la versión del formato del archivo Docker Compose.
services:
define los servicios que componen tu aplicación.
my-service:
es el nombre de nuestro servicio.
image: ubuntu:latest
especifica la imagen Docker a usar para este servicio. Usamos la última versión de la imagen Ubuntu.
command: tail -f /dev/null
es el comando que se ejecutará cuando el contenedor inicie. Este comando mantiene el contenedor ejecutándose indefinidamente sin consumir recursos significativos, lo cual es útil para pruebas y depuración.
Antes de iniciar el servicio, necesitamos descargar la imagen ubuntu:latest
.
docker pull ubuntu:latest
Ahora, podemos iniciar el servicio usando el comando docker-compose up
. La bandera -d
ejecuta los contenedores en modo detached (separado), lo que significa que correrán en segundo plano.
docker-compose up -d
Deberías ver una salida indicando que el servicio está siendo creado e iniciado.
Finalmente, verifiquemos el estado del servicio en ejecución usando el comando docker-compose ps
.
docker-compose ps
Deberías ver una salida mostrando que el contenedor my-service
está en ejecución.