docker compose 完整用法
时间: 2023-11-07 18:52:37 浏览: 38
Docker Compose 是一种用于定义和运行多个 Docker 容器应用程序的工具。它可以通过一个 YAML 文件来配置应用程序的服务,然后使用命令行工具来创建和启动这些服务。
以下是 Docker Compose 的完整用法:
1. 安装 Docker Compose
在使用 Docker Compose 之前,需要先安装 Docker Compose 工具。可以使用以下命令来安装 Docker Compose:
```
sudo curl -L "https://github.com/docker/compose/releases/download/<VERSION>/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
```
其中 `<VERSION>` 是指 Docker Compose 的版本号。可以在 Docker Compose 的官方 GitHub 页面上查找最新的版本号。
2. 编写 Docker Compose 配置文件
Docker Compose 使用 YAML 文件来定义应用程序的服务。在 YAML 文件中,可以定义多个服务以及它们的配置,包括容器名称、镜像、端口映射、挂载卷等。
以下是一个简单的 Docker Compose 配置文件的示例:
```
version: "3"
services:
web:
build: .
ports:
- "5000:5000"
redis:
image: "redis:alpine"
```
上面的示例配置了两个服务:`web` 和 `redis`。`web` 服务使用当前目录下的 Dockerfile 进行构建,并将容器内的 5000 端口映射到主机的 5000 端口;`redis` 服务使用 Redis 官方镜像,并使用 Alpine 作为基础镜像。
3. 使用 Docker Compose 启动应用程序
在编写好 Docker Compose 配置文件后,可以使用以下命令来启动应用程序:
```
docker-compose up
```
该命令会读取当前目录下的 docker-compose.yml 文件,并根据文件中定义的服务来创建和启动容器。如果需要在后台运行,可以使用 `-d` 参数:
```
docker-compose up -d
```
4. 停止和删除应用程序
使用以下命令可以停止应用程序:
```
docker-compose down
```
该命令会停止并删除所有的容器、网络和卷。如果只想停止容器而不删除它们,可以使用 `docker-compose stop` 命令。如果只想删除容器而不停止它们,可以使用 `docker-compose rm` 命令。
5. 其他常用命令
除了上面介绍的命令,Docker Compose 还提供了许多其他有用的命令,例如:
- `docker-compose ps`:列出当前运行的容器;
- `docker-compose logs`:查看容器的日志;
- `docker-compose exec`:在容器中运行命令;
- `docker-compose build`:构建服务的镜像;
- `docker-compose restart`:重启服务。
更多命令可以查看 Docker Compose 的官方文档。