使用Docker Compose编排本地容器的详细步骤

 更新时间:2025年09月03日 09:26:06   作者:东百牧码人  
Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具,通过 docker-compose.yml 文件,你可以轻松地将多个本地容器组合成一个完整的应用,本文给大家介绍了使用Docker Compose编排本地容器的详细步骤,需要的朋友可以参考下

使用 Docker Compose 编排本地容器

Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具。通过 docker-compose.yml 文件,你可以轻松地将多个本地容器组合成一个完整的应用。

以下是使用 Docker Compose 编排本地容器的详细步骤:

  1. 创建 docker-compose.yml 文件
    在项目根目录下创建 docker-compose.yml 文件,定义所有服务及其配置:
version: '3'
services:
  web:
    build: .  # 使用当前目录的 Dockerfile 构建镜像
    ports:
      - "8080:80"  # 映射主机端口 8080 到容器端口 80
    depends_on:
      - db  # 依赖于数据库服务
    environment:
      - DB_CONNECTION_STRING=server=db;database=myapp;user=sa;password=YourStrongPassword
  db:
    image: mcr.microsoft.com/mssql/server:2019-latest  # 使用官方 SQL Server 镜像
    environment:
      - SA_PASSWORD=YourStrongPassword
      - ACCEPT_EULA=Y
    volumes:
      - mssql-data:/var/opt/mssql  # 挂载数据卷保存数据库文件
 
volumes:
  mssql-data:  # 定义命名卷
  1. 构建和启动容器
    在项目目录下执行以下命令构建并启动所有服务:
docker-compose up -d 
  • -d 参数表示在后台运行容器
  • 首次运行会自动构建或拉取所需镜像
  1. 常用命令
# 查看容器状态
docker-compose ps
 
# 查看服务日志
docker-compose logs -f web
 
# 停止并删除容器
docker-compose down
 
# 仅重启特定服务
docker-compose restart web
 
# 构建并重新创建服务容器
docker-compose up -d --build

高级配置技巧

  1. 使用 .env 文件
    在项目根目录创建 .env 文件,存储环境变量:
DB_PASSWORD=YourStrongPassword
APP_PORT=8080

在 docker-compose.yml 中引用这些变量:

version: '3'
services:
  web:
    ports:
      - "${APP_PORT}:80"
  db:
    environment:
      - SA_PASSWORD=${DB_PASSWORD}
  1. 多环境配置
    创建 docker-compose.prod.yml 用于生产环境:
version: '3'
services:
  web:
    image: myregistry/web:${VERSION}  # 使用预构建镜像而非本地构建
    ports:
      - "80:80"
  db:
    volumes:
      - /data/mssql:/var/opt/mssql  # 使用主机路径挂载

使用 -f 参数指定配置文件:

docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d 
  1. 网络配置
    默认情况下,Docker Compose 会创建一个专用网络,所有服务都可以通过服务名互相访问(例如 web 服务可以通过 db 访问数据库)。
services:
  web:
    networks:
      - my-network
  db:
    networks:
      - my-network
 
networks:
  my-network:

通过这些配置,你可以高效地使用 Docker Compose 管理本地开发环境中的多个容器。

以上就是使用Docker Compose编排本地容器的详细步骤的详细内容,更多关于Docker Compose编排本地容器的资料请关注脚本之家其它相关文章!

相关文章

  • docker部署zabbix_agent的方法步骤

    docker部署zabbix_agent的方法步骤

    这篇文章主要介绍了docker部署zabbix_agent的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • docker 搭建Mysql集群的方法示例

    docker 搭建Mysql集群的方法示例

    这篇文章主要介绍了docker 搭建Mysql集群的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • win7环境下Docker快速构建及阿里云容器加速配置详解

    win7环境下Docker快速构建及阿里云容器加速配置详解

    这篇文章主要介绍了win7环境下Docker快速构建及阿里云容器加速配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Docker数据管理与网络通信的使用

    Docker数据管理与网络通信的使用

    这篇文章主要介绍了Docker数据管理与网络通信的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • 云原生之docker命令详解

    云原生之docker命令详解

    Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源,Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化,本文就给大家介绍了云原生中的docker命令
    2023-06-06
  • 阿里云ECS(CentOS镜像)安装docker的实现步骤

    阿里云ECS(CentOS镜像)安装docker的实现步骤

    本文主要介绍了阿里云ECS(CentOS镜像)安装docker的实现步骤,从准备工作到实际安装步骤,详细解析每一步操作,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • docker win ping 不通容器 避坑指南

    docker win ping 不通容器 避坑指南

    这篇文章主要介绍了docker win ping 不通容器 避坑指南,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 在Docker容器之间如何进行通信

    在Docker容器之间如何进行通信

    本文介绍了Docker网络模式,包括桥接网络、主机网络、容器网络和基于容器名称的通信,通过这些网络模式,容器之间可以方便地进行通信,实现跨网络通信
    2024-11-11
  • Docker容器化部署尝试——多容器通信(node+mongoDB+nginx)

    Docker容器化部署尝试——多容器通信(node+mongoDB+nginx)

    这篇文章主要介绍了Docker容器化部署尝试——多容器通信(node+mongoDB+nginx),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • 详解如何干净的卸载docker的方法

    详解如何干净的卸载docker的方法

    这篇文章主要介绍了详解如何干净的卸载docker的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09

最新评论