GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar y usar Docker Compose en CentOS 7

Docker Compose es una herramienta que le permite definir y ejecutar aplicaciones Docker de varios contenedores.

Con Compose, define los servicios, las redes y los volúmenes de la aplicación en un solo archivo YAML, luego gira su aplicación con un solo comando.

Compose se puede usar para diferentes propósitos, como implementaciones de aplicaciones de host único, pruebas automatizadas y desarrollo local.

Este tutorial lo guía a través de la instalación de la última versión de Docker Compose en CentOS 7. También cubriremos los conceptos y comandos básicos de Docker Compose.

Requisitos previos #

Asegúrese de cumplir con los siguientes requisitos previos antes de continuar con este tutorial:

  • Iniciar sesión como usuario con privilegios sudo.
  • Haga que Docker esté instalado en su sistema CentOS 7.

Instalar Docker Compose en CentOS #

El método recomendado para instalar Docker Compose en CentOS 7 es descargar el binario de Compose del repositorio GitHub de Docker.

Al momento de escribir este artículo, la última versión estable de Docker Compose es la versión 1.23.1 . Antes de descargar el binario de Compose, visite la página de lanzamiento del repositorio de Compose en GitHuband y verifique si hay una nueva versión disponible para descargar.

Complete los siguientes pasos para instalar Docker Compose en CentOS 7:

  1. Comience descargando el binario Docker Compose en /usr/local/bin directorio usando el siguiente curl comando:

    sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  2. Una vez que se complete la descarga, haga que el binario sea ejecutable escribiendo:

    sudo chmod +x /usr/local/bin/docker-compose
  3. Para verificar la instalación, escriba el siguiente comando para imprimir la versión de Compose:

    docker-compose --version

    La salida se verá así:

    docker-compose version 1.23.1, build b02f1306

Primeros pasos con Docker Compose #

En esta sección, le mostraremos cómo usar Docker Compose para ejecutar una pila de WordPress en su máquina CentOS 7.

Comience por crear un nuevo directorio para el proyecto y navegue hasta él:

mkdir my_app && cd my_app

A continuación, cree un archivo llamado docker-compose.yml dentro del directorio del proyecto:

nano docker-compose.yml

Pegue el siguiente contenido:

docker-compose.yml
version: '3.3'

services:
  db:
    image: mysql:5.7
    restart: always
    volumes:
      - db_data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wordpress

  wordpress:
    image: wordpress
    restart: always
    volumes:
      - ./wp_data:/var/www/html
    ports:
      - "8080:80"
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: wordpress
      WORDPRESS_DB_USER: root
      WORDPRESS_DB_PASSWORD: password
    depends_on:
       - db

volumes:
    db_data:
    wp_data:

Analicemos el código línea por línea.

La primera línea especifica la versión del archivo Compose. Hay varias versiones diferentes del formato de archivo Compose con soporte para versiones específicas de Docker.

A continuación, estamos definiendo dos servicios, db y wordpress . Cada servicio ejecuta una imagen y creará un contenedor separado cuando se ejecute docker-compose.

El db servicio:

  • Utiliza mysql:5.7 imagen. Si la imagen no está presente en su sistema, Compose la extraerá del repositorio público de Docker Hub.
  • Utiliza el reinicio always política que indicará al contenedor que siempre se reinicie.
  • Crea un volumen con nombre db_data para hacer que la base de datos sea persistente.
  • Define las variables de entorno para mysql:5.7 imagen.

El wordpress servicio:

  • Utiliza wordpress imagen. Si la imagen no está presente en su sistema, Compose la extraerá del repositorio público de Docker Hub.
  • Utiliza el reinicio always política que indicará al contenedor que siempre se reinicie.
  • Monta el wp_data directorio en el host a /var/lib/mysql dentro del contenedor.
  • Reenvía el puerto 80 expuesto en el contenedor al puerto 8080 en la máquina host.
  • Define las variables de entorno para wordpress imagen.
  • El depends_on instrucción define la dependencia entre los dos servicios. En este ejemplo, db se iniciará antes de wordpress .

Desde el directorio del proyecto, inicie la aplicación de WordPress usando el siguiente comando:

docker-compose up

La salida debería verse así:

...
wordpress_1  | [Sat Oct 13 21:30:48.286382 2018] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.25 (Debian) PHP/7.2.10 configured -- resuming normal operations
wordpress_1  | [Sat Oct 13 21:30:48.286425 2018] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D FOREGROUND'

Compose extraerá ambas imágenes, iniciará dos contenedores y creará wp_data directorio en el directorio de su proyecto.

Abra su navegador, escriba http://0.0.0.0:8080/ y verá la pantalla de instalación de Wordpress.

En este punto, la aplicación de WordPress está en funcionamiento y puede comenzar a trabajar en su tema o complemento.

Para detener Redactar, presione CTRL+C .environment variables Si desea iniciar Compose en un modo separado, use -d bandera:

docker-compose up -d

Para verificar los servicios en ejecución, use ps opción:

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 separado para detener el uso de servicios:

docker-compose stop

Para eliminar completamente los contenedores, use el down opción:

docker-compose down

Pasando el --volumes switch también eliminará los volúmenes de datos:

docker-compose down --volumes

Desinstalación de Docker Compose #

Si desea desinstalar Docker Compose, simplemente elimine el archivo binario con el siguiente comando:

sudo rm /usr/local/bin/docker-compose

Cent OS
  1. Cómo instalar Docker Compose en CentOS 7

  2. Cómo instalar y usar Docker Compose en Ubuntu 18.04

  3. Cómo instalar y usar Docker en CentOS 7

  4. Cómo instalar y usar Curl en CentOS 8

  5. Cómo instalar y usar Docker Compose en CentOS

Cómo instalar y usar Traceroute en CentOS 7

Cómo instalar Docker Compose en CentOS 7

Cómo instalar y usar Docker Compose en Ubuntu 20.04

Cómo instalar y usar Docker Compose en Ubuntu 22.04

Cómo instalar y usar Docker Compose en Debian 11

Cómo instalar y usar Docker en CentOS 8