准备一个简单的 docker-compose.yml 文件
在这一步中,我们将准备一个简单的 docker-compose.yml
文件。开始之前,我们需要先安装 Docker Compose。由于 LabEx 的虚拟机环境没有预装 Docker Compose,我们需要手动安装。我们将下载 Docker Compose 二进制文件并赋予可执行权限。
首先,使用 curl
下载 Docker Compose 二进制文件。我们将下载 1.29.2
版本,该版本与已安装的 Docker 版本兼容。
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
这条命令从 GitHub 官方发布页面下载 Docker Compose 二进制文件,并保存到 /usr/local/bin/docker-compose
。$(uname -s)
和 $(uname -m)
会自动检测你的操作系统和架构,确保下载正确的二进制文件。
接下来,我们需要为下载的二进制文件添加可执行权限。
sudo chmod +x /usr/local/bin/docker-compose
这条命令为 docker-compose
文件添加执行权限,使其可以作为命令运行。
现在,我们通过检查版本来验证 Docker Compose 是否安装成功。
docker-compose --version
你应该会看到类似 docker-compose version 1.29.2, build 5becea4c
的输出,这表示 Docker Compose 已安装并可以使用了。
现在,我们在你的 ~/project
目录下创建一个简单的 docker-compose.yml
文件。该文件将使用 nginx
镜像定义一个服务。
nano ~/project/docker-compose.yml
这条命令会打开 nano
文本编辑器来创建和编辑 docker-compose.yml
文件。将以下内容粘贴到编辑器中:
version: "3.8"
services:
web:
image: nginx:latest
ports:
- "80:80"
让我们分解一下这个 docker-compose.yml
文件:
version: '3.8'
指定了 Docker Compose 文件格式的版本。
services:
定义了你想运行的服务(容器)。
web:
是我们的服务名称,你可以随意命名。
image: nginx:latest
指定了该服务使用的 Docker 镜像。这里我们使用了官方 Nginx 镜像的最新版本。
ports:
映射主机和容器之间的端口。"80:80"
将主机的 80 端口映射到容器的 80 端口。这意味着你可以通过访问 http://localhost
(或虚拟机的 IP 地址)来访问容器内运行的 Nginx 网页服务器。
按 Ctrl + O
保存文件,然后按 Enter
,最后按 Ctrl + X
退出编辑器。
现在,你已经成功创建了一个简单的 docker-compose.yml
文件,该文件使用 Nginx 镜像定义了一个 web 服务。在接下来的步骤中,我们将使用这个文件来创建和管理容器。