Introducción
Docker Compose es una herramienta de línea de comandos que le permite definir y orquestar aplicaciones Docker de múltiples contenedores. Utilice un archivo YAML para configurar servicios, redes y volúmenes de aplicaciones.
Con Compose, puede definir un entorno de aplicación portátil que puede ejecutar en cualquier sistema. Los entornos de composición están aislados entre sí, lo que le permite ejecutar varias copias del mismo entorno en un solo host.
Compose se usa generalmente para desarrollo local, implementaciones de aplicaciones de host único y pruebas automatizadas.
Este artículo explica cómo instalar la última versión de Docker Compose en Ubuntu 20.04 LTS Focal Fossa. También exploraremos los conceptos y comandos básicos de Docker Compose.
Prerrequisitos
Supongamos que tiene Docker instalado en su computadora con Ubuntu 20.04 LTS, si no, lea el siguiente tutorial: Cómo instalar y configurar Docker en Ubuntu 20.04 LTS.
Antes de continuar con este tutorial, se deben cumplir los siguientes requisitos previos:
- Usuario con privilegios de sudo.
Si desea instalar Docker Compose en un servidor remoto, continúe leyendo; de lo contrario, omita el primer párrafo "Conexión al servidor" y lea el siguiente.
Conexión al servidor
Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:
ssh root@IP_DEL_SERVER
A continuación, deberá ingresar la contraseña del usuario root.
Si no usa el usuario raíz, puede iniciar sesión con otro nombre de usuario usando el mismo comando, luego cambie la raíz a su nombre de usuario:
ssh nome_utente@IP_DEL_SERVER
Luego se le pedirá que ingrese su contraseña de usuario.
El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Instalar Docker Compose
Docker Compose es un solo archivo binario. La instalación es sencilla. Descargaremos el archivo a un directorio ubicado en la RUTA del sistema y lo haremos ejecutable.
El paquete Docker Compose está disponible en los repositorios oficiales de Ubuntu 20.04 LTS, pero es posible que no siempre sea la última versión.
En el momento de escribir este artículo, la última versión estable de Docker Compose es la 1.25.5
. Antes de descargar el binario de Compose, visite la página de lanzamiento del repositorio de Compose en GitHub y verifique si hay una nueva versión disponible para descargar.
Use curl
para descargar el archivo Compose en el /usr/local/bin
:
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Una vez que se complete la descarga, aplique permisos ejecutables al archivo:
sudo chmod +x /usr/local/bin/docker-compose
Para verificar que la instalación fue exitosa, ejecute el siguiente comando que imprimirá la versión de Compose:
docker-compose --version
La salida se verá así:
docker-compose version 1.25.5, build 8a1c60f6
¡Eso es todo! Docker Compose se ha instalado en su computadora Ubuntu y puede comenzar a usarlo.
Introducción a Docker Compose
En esta sección, usaremos Docker Compose para crear una aplicación de WordPress de múltiples contenedores.
El primer paso es crear un directorio de proyecto con el comando mkdir:
mkdir my_app
Ingrese la carpeta recién creada con el comando cd:
cd my_app
Abra su editor de texto y cree un archivo llamado docker-compose.yml
dentro del directorio del proyecto:
nano docker-compose.yml
Pega el siguiente contenido:
Analicemos la estructura del archivo docker-compose.yml
La primera línea del archivo especifica la versión del archivo Compose. Hay varias versiones del formato de archivo Compose compatibles con versiones específicas de Docker.
Posteriormente, se definen servicios, volúmenes y redes.
En este ejemplo, tenemos los servicios de db
y wordpress
Cada servicio ejecuta una imagen y crea un contenedor separado cuando se ejecuta la composición de la ventana acoplable.
Los servicios pueden utilizar imágenes disponibles en DockerHub o imágenes creadas desde Dockerfile. La sección de servicio también incluye claves que especifican puertos, volúmenes, variables de entorno, dependencias y otros comandos de Docker expuestos
Desde el directorio del proyecto, inicie la aplicación de WordPress ejecutando el siguiente comando:
docker-compose up
Compose extrae las imágenes, inicia los contenedores y crea el directorio wp_data
Ingrese http://TUO_INDIRIZZO_IP:8080/
en su navegador y verá la pantalla de instalación de Wordpress. En este punto, la aplicación Wordpress está activa y puede comenzar a trabajar en su tema o complemento.
Para dejar de marcar, presione CTRL+C
También puede iniciar la composición en modo separado (en segundo plano) pasando la opción -d
docker-compose up -d
Para verificar los servicios en ejecución, use la opción ps
docker-compose ps
Name Command State Ports
----------------------------------------------------------------------------------
my_app_db_1 docker-entrypoint.sh mysqld Up 3306/tcp, 33060/tcp
my_app_wordpress_1 docker-entrypoint.sh apach... Up 0.0.0.0:8080->80/tcp
Cuando Compose se ejecuta en modo independiente para detener los servicios, ejecute:
docker-compose stop
Para detener y eliminar redes y contenedores de aplicaciones, use la opción de down
docker-compose down
Desinstalar Docker Compose
Para desinstalar Docker Compose, simplemente elimine el archivo binario escribiendo:
sudo rm /usr/local/bin/docker-compose
Conclusión
Le mostramos cómo instalar Docker Compose en Ubuntu 20.04 LTS Focal Fossa. El uso de Docker Compose puede mejorar significativamente el flujo de trabajo y la productividad. Puede definir su entorno de desarrollo con Docker Compose y compartirlo con los colaboradores del proyecto.