yaml 被用于配置 docker 的容器、映像和服務。要配置:對于容器,在 docker-compose.yml 中指定名稱、鏡像、端口和環境變量。對于映像,在 dockerfile 中提供基礎鏡像、構建命令和默認命令。對于服務,在 docker-compose.service.yml 中設定名稱、鏡像、端口、卷和環境變量。
使用 YAML 配置 Docker
Docker 使用 YAML(YAML ain’t Markup Language)作為其配置文件的格式。YAML 是一種簡潔的人類可讀性語言,可用于描述數據結構。通過使用 YAML,您可以輕松配置 Docker 容器、映像和服務。
YAML 文件的結構
YAML 文件由以下部分組成:
配置 Docker 容器
要使用 YAML 配置 Docker 容器,請創建一個名為 docker-compose.yml 的文件。該文件包含以下信息:
- 容器名稱:分配給容器的名稱。
- 鏡像:用于創建容器的 Docker 鏡像。
- 命令:在容器啟動時運行的命令。
- 端口:容器公開的端口。
- 環境變量:在容器內設置的環境變量。
示例 Docker Compose 文件
version: "3.9" services: web: image: nginx:latest ports: - "80:80" environment: - VIRTUAL_HOST=example.com
配置 Docker 映像
要使用 YAML 配置 Docker 映像,請創建一個名為 Dockerfile 的文件。該文件包含以下指令:
- FROM:指定要構建映像的基礎鏡像。
- RUN:在映像構建期間運行的命令。
- copy:將文件或目錄從主機復制到映像。
- CMD:在容器啟動時運行的默認命令。
示例 Dockerfile
FROM nginx:latest RUN echo "Hello, world!" > /usr/share/nginx/html/index.html
配置 Docker 服務
要使用 YAML 配置 Docker 服務,請創建一個名為 docker-compose.service.yml 的文件。該文件包含以下信息:
- 服務名稱:分配給服務的名稱。
- 鏡像:用于創建服務的 Docker 鏡像。
- 端口:服務公開的端口。
- 卷:將主機上的目錄掛載到服務中的目錄。
- 環境變量:在服務中設置的環境變量。
示例 Docker Compose 服務文件
version: "3.9" services: web: image: nginx:latest ports: - "80:80" volumes: - "/path/to/local/directory:/path/to/container/directory" environment: - VIRTUAL_HOST=example.com