首頁 >運維 >Docker >Docker 中 YML 檔案是什麼?

Docker 中 YML 檔案是什麼?

Guanhui
Guanhui原創
2020-06-11 16:22:077062瀏覽

Docker 中 YML 檔案是什麼?

Docker 中 YML 檔案是什麼?

Docker中YML檔案一般是指Docker預設的範本檔案“docker-compose.yml”,該檔案用來定義的每個服務都必須透過image指令指定映像,或使用Dockerfile的build指令進行自動建置。

Compose文件

Compose文件是一個定義服務services、網路networks和磁碟區volumes的YAML文件,預設路徑是. /docker-compose.yml,可使用.yml或.yaml作為檔案副檔名。

服務services定義包含應用於為該服務啟動的每個容器的配置,類似傳遞命令列參數一樣docker container create。同樣,網路networks和磁碟區volumes的定義類似docker network create和docker volume create。正如docker container create在Dockerfile指定選項,如CMD、EXPOSE、VOLUME、ENV,在預設情況下,不需要在docker-compose.yml配置中再次指定。可以使用Bash類別${VARIABLE}語法在設定值中使用環境變數。

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:

推薦教學:《Docker

以上是Docker 中 YML 檔案是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn