容器设置和命令
章节大纲
-
解压 Labsetup 压缩包, 进入 Labsetup 文件夹,然后用 docker-compose.yml 文件安装实验环境。 对这个文件及其包含的所有 Dockerfile 文件中的内容的详细解释都可以在用户手册(注意:如果你在部署容器的过程中发现从官方源下载容器镜像非常慢,可以参考手册中的说明使用当地的镜像服务器)中找到。 如果这是你第一次使用容器设置 SEED 实验环境,那么阅读用户手册非常重要。
在下面,我们列出了一些与 Docker 和 Compose 相关的常用命令。 由于我们将非常频繁地使用这些命令,因此我们在 .bashrc 文件 (在我们提供的 SEED Ubuntu 20.04 虚拟机中)中为它们创建了别名。
$ docker-compose build # 建立容器镜像 $ docker-compose up # 启动容器 $ docker-compose down # 关闭容器 // 上述 Compose 命令的别名 $ dcbuild # docker-compose build 的别名 $ dcup # docker-compose up 的别名 $ dcdown # docker-compose down 的别名
所有容器都在后台运行。 要在容器上运行命令,我们通常需要获得容器里的 Shell 。 首先需要使用 docker ps 命令找出容器的 ID , 然后使用 docker exec 在该容器上启动 Shell 。 我们已经在 .bashrc 文件中为这两个命令创建了别名。
$ dockps // docker ps --format "{{.ID}} {{.Names}}" 的别名 $ docksh <id> // docker exec -it <id> /bin/bash 的别名 // 下面的例子展示了如何在主机 C 内部得到 Shell $ dockps b1004832e275 hostA-10.9.0.5 0af4ea7a3e2e hostB-10.9.0.6 9652715c8e0a hostC-10.9.0.7 $ docksh 96 root@9652715c8e0a:/# // 注: 如果一条 docker 命令需要容器 ID,你不需要 // 输入整个 ID 字符串。只要它们在所有容器当中 // 是独一无二的,那只输入前几个字符就足够了。
如果你在设置实验环境时遇到问题,可以尝试从手册的“Miscellaneous Problems”部分中寻找解决方案。