HOME

Docker Compose

介绍

Docker Compose 是一个开源工具,用于定义和运行多容器 Docker 应用程序。它允许你使用 YAML 文件来配置应用程序的服务、网络以及卷等组件,并通过单一命令启动这些服务。与传统的单个 Docker 容器管理相比,Docker Compose 提供了一种更简单的方式来管理和部署复杂的微服务架构。

安装

在开始使用 Docker Compose 之前,需要先确保已经安装了 Docker。对于不同操作系统和发行版的用户来说,安装过程可能会有所不同。以下是几种常见操作系统的安装方法:

Ubuntu

sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

macOS

推荐使用 Homebrew 进行安装:

brew install --cask docker

启动 Docker 并验证是否成功安装:

docker --version

安装完 Docker 后,可以通过以下命令来安装 Docker Compose:

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

验证安装

执行以下命令来确保 Docker Compose 已正确安装:

docker-compose --version

YAML 文件配置

Docker Compose 通过一个或多个 docker-compose.yml 文件来定义应用的服务和网络等。以下是一个简单的示例,展示了如何在 docker-compose.yml 中配置服务。

示例文件内容

version: '3.8'
services:
  web:
    image: nginx:latest
    ports:
      - "8080:80"
    networks:
      - my_network

  db:
    image: postgres:12
    environment:
      POSTGRES_PASSWORD: example
    volumes:
      - pgdata:/var/lib/postgresql/data
    networks:
      - my_network

volumes:
  pgdata:

networks:
  my_network:

解释

使用 Docker Compose

构建并启动服务

在包含 docker-compose.yml 文件的目录中,运行以下命令来启动所有定义的服务:

docker-compose up -d

这里的 -d 参数表示以守护进程模式(后台)运行容器。如需查看日志或停止服务,可以使用相应的命令。

停止服务

要停止服务并清理资源,请使用以下命令:

docker-compose down

总结

Docker Compose 是管理和部署多容器 Docker 应用程序的强大工具。通过简洁的 YAML 配置文件,开发者能够轻松地定义和启动复杂的微服务架构。无论是在开发环境还是生产环境中,它都提供了极大的便利性和灵活性。随着 Docker 的广泛应用,掌握 Docker Compose 成为了现代开发者的必备技能之一。