文章目录
- 一、选择Docker Compose版本
- 二、赋予执行权限
- 三、创建软链接以便于在任何位置调用docker-compose:
- 四、验证安装
- 五、docker-compose运行命令
- 六、docker-compose.yml 说明
一、选择Docker Compose版本
此链接速度比较快
sudo curl -L "https://mirror.ghproxy.com/https://github.com/docker/compose/releases/download/v2.27.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
二、赋予执行权限
sudo chmod +x /usr/local/bin/docker-compose
三、创建软链接以便于在任何位置调用docker-compose:
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
四、验证安装
docker-compose --version
五、docker-compose运行命令
sudo docker-compose up -d #后台启动
sudo docker-compose logs #查看服务容器的输出日志sudo docker-compose start #启动服务容器
sudo docker-compose stop #停止服务容器sudo docker-compose rm -s #先停止所有服务的容器,再删除所有服务的容器
sudo docker-compose rm -sv #删除工程中指定服务的容器
sudo docker-compose rm -f # 删除服务容器挂载的数据卷
六、docker-compose.yml 说明
version: '3.8' # Docker Compose 文件版本
services: # 定义服务service_name_1: # 服务1的名称image: image_name_1 # 使用的镜像build: # 或者使用 Dockerfile 构建镜像context: . # Dockerfile 所在的上下文路径dockerfile: Dockerfile # Dockerfile 的名称,默认为 Dockerfileports:- "host_port:container_port" # 端口映射environment: # 环境变量VAR_NAME: valuevolumes: # 数据卷挂载- host_path:container_path # 主机路径:容器路径networks: # 网络配置- network_namedepends_on: # 依赖服务- service_name_2restart: always # 重启策略command: # 覆盖容器启动命令- your-command- hereservice_name_2: # 类似地定义其他服务...networks: # 可选部分,定义网络network_name:driver: bridge # 网络类型,默认为桥接网络volumes: # 可选部分,定义数据卷volume_name:driver: local # 数据卷驱动,默认为本地存储
关键概念解释
version: 指定 Docker Compose 文件的版本号,这影响到你能使用的功能和语法。
services: 定义了组成应用的服务集合。每个服务定义了如何构建或使用哪个镜像、环境变量、端口映射等。
image: 指定服务使用的 Docker 镜像名称。
build: 当你需要基于 Dockerfile 构建镜像时使用。
ports: 映射容器端口到宿主机端口,格式为 宿主机端口:容器端口。
environment: 设置环境变量,供服务中的进程使用。
volumes: 挂载数据卷,用于持久化数据或共享数据。
networks: 定义网络,让服务之间可以相互通信。
depends_on: 指定服务启动的依赖顺序。
restart: 设置服务的重启策略,如 always 表示无论何种退出状态都会重启容器。
command: 覆盖容器启动时默认执行的命令。