📜  docker-compose 命令多个 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:14:46.524000             🧑  作者: Mango

Docker Compose 命令多个 - Shell/Bash

Docker Compose 是一款用于定义和管理多容器 Docker 应用程序的工具。它使用一个 YAML 文件来配置应用程序的服务、网络和卷,并使用一条命令来启动、停止和管理整个应用程序。

这篇文章将向程序员介绍 Docker Compose 命令的常见用法,包括使用 Docker Compose 构建、启动和管理 Docker 容器的基本操作。所有的示例代码都是在 Shell/Bash 环境下执行的。

安装 Docker Compose

在开始使用 Docker Compose 之前,我们需要在本地系统上安装 Docker Compose。Docker Compose 可以通过以下命令来安装:

$ sudo curl -L "https://github.com/docker/compose/releases/latest/download/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
docker-compose version 1.28.5, build c4eb3a1f
编写 Docker Compose 文件

Docker Compose 使用一个 YAML 格式的文件来定义应用程序的服务、网络和卷。下面是一个示例的 Docker Compose 文件:

version: "3.9"
services:
  web:
    build: ./web
    ports:
      - "8000:8000"
    environment:
      - DEBUG=True
  db:
    image: postgres:13
    environment:
      - POSTGRES_USER=myuser
      - POSTGRES_PASSWORD=mypassword
      - POSTGRES_DB=mydb

上面的文件定义了两个服务:webdbweb 服务是一个使用 Dockerfile 构建的应用程序,暴露 8000 端口,并设置了一个环境变量 DEBUG=Truedb 服务使用一个现成的 PostgreSQL 镜像,并设置了一些环境变量来配置数据库。

构建和启动容器

一旦你编写了 Docker Compose 文件,你就可以使用 docker-compose up 命令来构建和启动容器。这个命令将会自动查找当前目录下的 docker-compose.yml 文件,并根据其中的配置启动容器。以下是命令的使用示例:

$ docker-compose up -d

上面的命令会在后台构建和启动所有定义的服务。如果服务需要构建,则会使用 Dockerfile 来构建镜像。使用 -d 参数可以将容器以守护进程的方式运行,即在后台运行。

查看正在运行的容器

要查看当前正在运行的容器以及他们的状态,可以使用 docker-compose ps 命令。这个命令会列出所有由 Docker Compose 管理的容器,并显示它们的状态、名称和相关信息。以下是该命令的使用示例:

$ docker-compose ps
     Name           Command     State            Ports          
---------------------------------------------------------------
myapp_db_1   docker-           Up     5432/tcp                      
             entrypoint.sh                                       
myapp_web_1  python            Up     0.0.0.0:8000->8000/tcp     
             manage.py runserver                                 

上面的输出显示了两个正在运行的容器:myapp_web_1myapp_db_1。它们的状态为 "Up",并显示了容器的命令和相关端口的映射。

停止和删除容器

要停止 Docker Compose 启动的容器,可以使用 docker-compose down 命令。这个命令会停止并删除所有正在运行的容器,同时清理所有的网络和卷。以下是命令的使用示例:

$ docker-compose down

上面的命令会停止并删除所有正在运行的容器,并清理相关的资源。

更多操作

除了上面介绍的基本操作外,Docker Compose 还提供了许多其他有用的命令和功能,如构建单个服务、扩展服务、查看日志等。你可以在 Docker Compose 的官方文档中找到更多关于这些命令的详细信息。

希望本文能够帮助你了解 Docker Compose 命令的基本用法和工作原理。使用 Docker Compose 可以简化多容器应用程序的管理,提高开发和部署的效率。请记得根据自己的需求和实际情况进行适当调整和配置。