Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Was ist eine YML-Datei in Docker?

Was ist eine YML-Datei in Docker?

Guanhui
GuanhuiOriginal
2020-06-11 16:22:077023Durchsuche

Was ist eine YML-Datei in Docker?

Was ist eine YML-Datei in Docker?

Die YML-Datei in Docker bezieht sich im Allgemeinen auf die Standardvorlagendatei von Docker „docker-compose.yml“. Jeder zum Definieren dieser Datei verwendete Dienst muss das Bild über den Bildbefehl angeben oder die Docker-Datei verwenden Der Build-Befehl führt einen automatischen Build durch.

Compose-Datei

Die Compose-Datei ist eine YAML-Datei, die Dienste, Netzwerke und Volumes definiert. Der Standardpfad lautet. /docker-compose.yml können Sie .yml oder .yaml als Dateierweiterung verwenden.

Eine Dienstdefinition enthält eine Konfiguration, die für jeden für diesen Dienst gestarteten Container gilt, ähnlich der Übergabe von Befehlszeilenargumenten an Docker Container Create. Ebenso werden Netzwerke und Volumes ähnlich wie bei der Docker-Netzwerkerstellung und der Docker-Volume-Erstellung definiert. So wie Docker Container Create standardmäßig Optionen in der Docker-Datei angibt, z. B. CMD, EXPOSE, VOLUME und ENV, ist es nicht erforderlich, diese in der Konfiguration von docker-compose.yml erneut anzugeben. Umgebungsvariablen können in Konfigurationswerten mithilfe der Syntax der Bash-Klasse ${VARIABLE} verwendet werden.

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:

Empfohlenes Tutorial: „Docker

Das obige ist der detaillierte Inhalt vonWas ist eine YML-Datei in Docker?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn