Un outil pour définir et exécuter des applications docker multi-conteneurs. Il est souvent utilisé pour mettre en place un environnement de développement ou un environnement d'exécution de test automatisé. En tant qu'utilisation, en décrivant les définitions de serveur Web, serveur de base de données, serveur de cache, etc. dans un fichier yml, les conteneurs requis pour l'exécution de l'application peuvent être démarrés ensemble sur la base du fichier yml. yml est un format pour exprimer des données structurées, et il peut être décrit intuitivement même si vous n'avez jamais utilisé yml. Vous pouvez comprendre la structure en regardant le fichier.
1 Préparez ** Dockerfile ** ou ** image à utiliser ** sur DockerHub, etc. 2 Définissez ** docker-compose.yml ** Écrivez les paramètres de démarrage pour chaque conteneur. C'est comme spécifier un nom d'image et divers indicateurs avec la commande docker run. 3 Exécutez ** docker-compose up ** Spécifiez docker-compose up dans le répertoire où se trouve docker-compose. Cependant, s'il est laissé tel quel, il sera exécuté au premier plan, donc il est souvent exécuté en se détachant avec l'option -d. Une fois exécuté, chaque conteneur sera exécuté selon la définition de docker-compose.yml.
docker-compose.yml
version: '3' -#docker-Version du format de fichier de composition
services:
web: -#Nom du service, n'importe quel nom peut être donné
build: . -#docker-compose.Le contexte de construction est le même répertoire que yml. Par conséquent, il est nécessaire de créer un fichier docker pour le service Web dans le même répertoire que le fichier yml.
ports: -#Indique le port à exposer à l'extérieur du conteneur et le port à mapper.
- "5000:5000"
volumes:
- .:/code -#docker avec support de liaison-compose.Le répertoire où existe yml est le conteneur/Monté dans le répertoire de code.
- logvolume01:/var/log -#Le volume de logvolume01 défini en volumes du conteneur de service Web/var/Monté sur journal.
links:
- redis -#Définition d'un lien du service Web vers le service redis
redis:
image: redis -#Le service redis lance simplement un conteneur en utilisant l'image redis.
volumes:
logvolume01 -#Si vous souhaitez monter un volume nommé, vous devez le définir en volumes.
Expressément{}Cependant, il n'est pas nécessaire de l'écrire. Lors de l'écriture de paramètres tels que le pilote à utiliser pour le volume,
Vous pouvez continuer à écrire les paramètres sous le nom du volume, mais si vous utilisez simplement le volume par défaut, aucun paramètre n'est requis.
% docker-compose -v
docker-compose version 1.26.2, build eefe0d31
S'il est téléchargé, la version de docker-compose sera affichée.
Recommended Posts