Maison  >  Article  >  Opération et maintenance  >  Qu'est-ce qu'un fichier YML dans Docker ?

Qu'est-ce qu'un fichier YML dans Docker ?

Guanhui
Guanhuioriginal
2020-06-11 16:22:077041parcourir

Qu'est-ce qu'un fichier YML dans Docker ?

Qu'est-ce qu'un fichier YML dans Docker ?

Le fichier YML dans Docker fait généralement référence au fichier modèle par défaut de Docker "docker-compose.yml". Chaque service utilisé pour définir ce fichier doit spécifier l'image via la directive image, ou utiliser le Dockerfile. La commande build effectue une construction automatique.

Fichier Compose

Le fichier Compose est un fichier YAML qui définit les services, les réseaux et les volumes. Le chemin par défaut est. /docker-compose.yml, vous pouvez utiliser .yml ou .yaml comme extension de fichier.

Une définition de service contient une configuration qui s'applique à chaque conteneur démarré pour ce service, de la même manière que la transmission d'arguments de ligne de commande à la création du conteneur Docker. De même, les réseaux et les volumes sont définis de la même manière que la création de réseau Docker et la création de volume Docker. Tout comme Docker Container Create spécifie les options du Dockerfile, telles que CMD, EXPOSE, VOLUME et ENV, par défaut, il n'est pas nécessaire de les spécifier à nouveau dans la configuration docker-compose.yml. Les variables d'environnement peuvent être utilisées dans les valeurs de configuration à l'aide de la syntaxe ${VARIABLE} de la classe Bash.

version: "3"
services:
  redis:
    image: redis:alpine
    ports:
      - "6379"
    networks:
      - frontend
    deploy:
      replicas: 2
      update_config:
        parallelism: 2
        delay: 10s
      restart_policy:
        condition: on-failure
  db:
    image: postgres:9.4
    volumes:
      - db-data:/var/lib/postgresql/data
    networks:
      - backend
    deploy:
      placement:
        constraints: [node.role == manager]
  vote:
    image: dockersamples/examplevotingapp_vote:before
    ports:
      - 5000:80
    networks:
      - frontend
    depends_on:
      - redis
    deploy:
      replicas: 2
      update_config:
        parallelism: 2
      restart_policy:
        condition: on-failure
  result:
    image: dockersamples/examplevotingapp_result:before
    ports:
      - 5001:80
    networks:
      - backend
    depends_on:
      - db
    deploy:
      replicas: 1
      update_config:
        parallelism: 2
        delay: 10s
      restart_policy:
        condition: on-failure
  worker:
    image: dockersamples/examplevotingapp_worker
    networks:
      - frontend
      - backend
    deploy:
      mode: replicated
      replicas: 1
      labels: [APP=VOTING]
      restart_policy:
        condition: on-failure
        delay: 10s
        max_attempts: 3
        window: 120s
      placement:
        constraints: [node.role == manager]
  visualizer:
    image: dockersamples/visualizer:stable
    ports:
      - "8080:8080"
    stop_grace_period: 1m30s
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"
    deploy:
      placement:
        constraints: [node.role == manager]
networks:
  frontend:
  backend:
volumes:
  db-data:

Tutoriel recommandé : "Docker"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn