认识
2024年05月14日
一、认识
Docker Compose
是一个强大的工具,是一个用于定义和运行多容器 Docker
应用程序的工具。允许你使用简单的 YAML
文件定义和管理多容器应用。通过 docker-compose.yml
文件,你可以轻松地配置、启动和管理应用的各个组件,多个服务、网络和卷, 从而简化开发和部署过程。并使用一个简单的命令来启动和管理它们。这使得管理复杂的容器化应用程序变得更加容易。
二、语法
version: "3.8"
services: # 容器
serviceName1: # 服务名字
build: # 运行 docker-compose build 或者 docker-compose up --build 时必须指定 build
context: # 上下文
dockerfile: # Dockerfile 文件
image: [镜像名称:Tag]
container_name: # 指定容器名字,相当于 docker run 里的 --name
command: # 可选,如果设置,会覆盖默认镜像里的 CMD 命令
environment: # 可选,相当于 docker run 里的 --e
volumes: # 可选, 相当于 docker run 里的 -v
networks: # 可选,相当于 docker run 里的 --network
ports: # 可选,相当于 docker run 里的 -p
serviceName2:
……
volumes: # 可选, 相当于 docker volume create
networks: # 可选,相当于 docker network create
networks1:
networks2:
三、通信
docker-compose.yml
结构如下
services:
serviceName1:
networks:
- networks1
serviceName2:
networks:
-networks1
networks:
networks1
serviceName2
服务向 serviceName1
通信:
# 1. 进入 serviceName2 容器
docker ps -a
docker exec -it serviceName2 容器ID sh/bash
# 2. curl 或者 ping serviceName1 , 可以直接 curl 或者 ping 服务名称
curl serviceName1
ping serviceName1
四、应用
DockerCompose
一般应用于单机环境,通过 Compose
同时部署多个容器。所以,DockerCompose
只可以用于开发环境