GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer et utiliser Docker Compose sur Ubuntu 18.04

Docker Compose est un outil qui permet de définir et de gérer des applications Docker multi-conteneurs. Il utilise un fichier YAML pour configurer les services, les réseaux et les volumes de l'application.

Compose peut être utilisé à différentes fins. Les déploiements d'applications à hôte unique, les tests automatisés et le développement local sont les cas d'utilisation les plus populaires de Docker Compose.

Dans ce didacticiel, nous allons vous montrer comment installer la dernière version de Docker Compose sur Ubuntu 18.04 et explorer les concepts et commandes de base de Docker Compose.

Les mêmes instructions s'appliquent à Ubuntu 16.04 et à toute autre distribution basée sur Debian, y compris Debian, Linux Mint et Elementary OS.

Prérequis #

Assurez-vous que vous avez satisfait aux prérequis suivants avant de poursuivre ce didacticiel :

  • Connecté en tant qu'utilisateur avec des privilèges sudo.
  • Installez Docker en suivant les instructions de Comment installer et utiliser Docker sur Ubuntu 18.04.

Installer Docker Compose sur Ubuntu #

Le package d'installation de Docker Compose est disponible dans les dépôts officiels d'Ubuntu 18.04, mais il ne s'agit pas toujours de la dernière version. L'approche recommandée consiste à installer Docker Compose à partir du référentiel GitHub de Docker.

Au moment de la rédaction de cet article, la dernière version stable de Docker Compose est la version 1.23.1 . Avant de télécharger le binaire Compose, visitez la page de publication du référentiel Compose sur GitHuband, vérifiez s'il existe une nouvelle version disponible au téléchargement.

Pour installer Docker Compose sur Ubuntu 18.04, suivez ces étapes :

  1. Téléchargez le binaire Docker Compose dans le /usr/local/bin répertoire avec le curl suivant commande :

    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. Une fois le téléchargement terminé, appliquez les autorisations exécutables au binaire Compose :

    sudo chmod +x /usr/local/bin/docker-compose
  3. Vérifiez l'installation en exécutant la commande suivante qui affichera la version de Compose :

    docker-compose --version

    La sortie ressemblera à ceci :

    docker-compose version 1.23.1, build b02f1306

Démarrer avec Docker Compose #

Dans cette section, nous allons montrer comment utiliser Docker Compose pour configurer une application WordPress multi-conteneurs sur Ubuntu 18.04.

Commencez par créer un répertoire de projet et accédez-y :

mkdir my_appcd my_app

Lancez votre éditeur de texte et créez un fichier nommé docker-compose.yml dans le répertoire du projet :

nano docker-compose.yml

Collez le contenu suivant :

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:

Analysons le code ligne par ligne.

Dans la première ligne, nous spécifions la version du fichier Compose. Il existe plusieurs versions différentes du format de fichier Compose avec prise en charge de versions spécifiques de Docker.

Ensuite, nous définissons deux services, db et wordpress . Chaque service exécute une image et crée un conteneur séparé lors de l'exécution de docker-compose.

La db service :

  • Utilise le mysql:5.7 image. Si l'image n'est pas présente sur le système, elle sera extraite du référentiel public Docker Hub.
  • Utilise le redémarrage always stratégie qui demandera au conteneur de toujours redémarrer.
  • Crée un volume nommé db_data pour rendre la base de données persistante.
  • Définit les variables d'environnement pour mysql:5.7 photo.

Le wordpress service :

  • Utilise wordpress image. Si l'image n'est pas présente sur votre système, Compose l'extrairea du référentiel public Docker Hub.
  • Utilise le redémarrage always stratégie qui demandera au conteneur de toujours redémarrer.
  • Monte le wp_data répertoire sur l'hôte vers /var/lib/mysql à l'intérieur du conteneur.
  • Transfère le port 80 exposé sur le conteneur vers le port 8080 sur la machine hôte.
  • Définit les variables d'environnement pour wordpress photo.
  • Le depends_on L'instruction définit la dépendance entre les deux services. Dans cet exemple, db sera lancé avant wordpress .

Depuis le répertoire du projet, démarrez l'application WordPress en exécutant la commande suivante :

docker-compose up

Le résultat devrait ressembler à ceci :

...
wordpress_1  | [Sun Sep 23 22:31:43.499055 2018] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.25 (Debian) PHP/7.2.10 configured -- resuming normal operations
wordpress_1  | [Sun Sep 23 22:31:43.499796 2018] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D FOREGROUND'

Compose va extraire les deux images, démarrer deux conteneurs et créer le wp_data répertoire dans votre répertoire de projet.

Saisissez http://0.0.0.0:8080/ dans votre navigateur et vous verrez l'écran d'installation de Wordpress.

À ce stade, l'application Wordpress est opérationnelle et vous pouvez commencer à travailler sur votre thème ou votre plugin.

Pour arrêter Compose appuyez sur CTRL+C .

Vous pouvez également démarrer Compose en mode détaché en passant le -d drapeau.

docker-compose up -d

Pour vérifier les services en cours d'exécution, utilisez le ps choix :

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

Lorsque Compose s'exécute en mode détaché pour arrêter l'utilisation des services :

docker-compose stop

Si vous souhaitez supprimer entièrement les conteneurs, utilisez le down choix :

docker-compose down

Passer le --volumes switch supprimera également les volumes de données :

docker-compose down --volumes

Désinstallation de Docker Compose #

Si pour une raison quelconque vous souhaitez désinstaller Docker Compose, vous pouvez simplement supprimer le binaire en tapant :

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

Ubuntu
  1. Comment installer Docker Compose sur Ubuntu 18.04

  2. Comment installer et utiliser Docker sur Ubuntu 20.04

  3. Comment installer et utiliser Docker dans Ubuntu 20.04

  4. Comment installer et utiliser Docker Compose sur CentOS

  5. Comment installer Docker Compose sur Ubuntu 18.04

Comment installer et utiliser R sur Ubuntu

Comment installer et utiliser Docker Compose sur Ubuntu 20.04

Comment installer et utiliser Docker Compose sur Ubuntu 22.04

Comment installer et utiliser Docker sur Ubuntu 22.04

Comment installer Docker Compose sur Ubuntu

Comment installer et utiliser Docker sur Ubuntu 20.04