如何使用 docker buildx stop 命令管理构建器实例

DockerDockerBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在本实验中,你将学习如何使用 docker buildx stop 命令管理 Docker builder 实例。我们将介绍有效控制构建器环境生命周期的关键步骤。

具体而言,你将学习如何创建新的构建器实例、停止默认构建器实例,以及通过名称停止特定构建器实例。这些实践操作将帮助你掌握管理不同构建配置的技能,从而优化 Docker 镜像构建流程。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/ContainerOperationsGroup -.-> docker/stop("Stop Container") docker/ContainerOperationsGroup -.-> docker/create("Create Container") subgraph Lab Skills docker/ls -.-> lab-555063{{"如何使用 docker buildx stop 命令管理构建器实例"}} docker/stop -.-> lab-555063{{"如何使用 docker buildx stop 命令管理构建器实例"}} docker/create -.-> lab-555063{{"如何使用 docker buildx stop 命令管理构建器实例"}} end

创建新的构建器实例

在这一步中,我们将学习如何在 Docker 中创建新的构建器实例。构建器实例是用于构建 Docker 镜像的后端服务。默认情况下,Docker 使用单个构建器实例,但你可以创建具有不同配置的新实例,例如使用不同的构建驱动或连接到远程构建器。

要创建新的构建器实例,我们使用 docker buildx create 命令。该命令允许我们为新实例指定各种选项,例如名称、驱动和端点。

让我们创建一个名为 mybuilder 的新构建器实例。我们将使用默认的 docker 驱动,该驱动使用 Docker 守护进程来构建镜像。

docker buildx create --name mybuilder

运行此命令后,Docker 将创建一个具有指定名称的新构建器实例。你应该会看到类似以下的输出:

mybuilder

此输出确认 mybuilder 实例已创建成功。

现在,让我们验证新构建器实例是否已成功创建。我们可以使用 docker buildx ls 命令列出所有可用的构建器实例。

docker buildx ls

该命令的输出将显示构建器实例列表,包括默认实例和我们刚刚创建的 mybuilder 实例。在列表中查找 mybuilder 条目。

NAME/NODE       DRIVER/ENDPOINT STATUS  BUILDKIT
default         docker
  default       default         running v0.10.5
mybuilder       docker
  mybuilder     default         running v0.10.5

在输出中,你可以看到 mybuilder 被列出,其驱动为 docker,状态为 running。这表明新的构建器实例已准备就绪,可供使用。

停止默认构建器实例

在本步骤中,我们将学习如何停止 Docker 中的默认构建器实例。默认构建器实例是 Docker 用于构建镜像的预设实例。有时你可能需要停止它,例如当你想要切换到其他构建器实例或进行问题排查时。

要停止构建器实例,我们使用 docker buildx stop 命令后接实例名称。默认构建器实例通常命名为 default

让我们停止默认构建器实例:

docker buildx stop default

运行此命令后,Docker 将尝试停止默认构建器实例。如果实例正在运行,它将被停止。若命令执行成功,你可能不会看到任何输出。

现在,让我们验证默认构建器实例是否已停止。我们可以再次使用 docker buildx ls 命令列出构建器实例并检查其状态:

docker buildx ls

查看 docker buildx ls 命令的输出。default 构建器实例的状态现在应显示为 stopped,或者可能不会出现在运行中的实例列表中:

NAME/NODE       DRIVER/ENDPOINT STATUS  BUILDKIT
default         docker
  default       default         stopped
mybuilder       docker
  mybuilder     default         running v0.10.5

在上方输出中,你可以看到 default 构建器下的 default 节点状态现已变为 stopped。这确认默认构建器实例已成功停止。

按名称停止特定构建器实例

在本步骤中,我们将学习如何通过名称停止特定的构建器实例。在前面的步骤中,我们创建了一个名为 mybuilder 的新构建器实例。现在,我们将停止这个特定实例。

与停止默认实例类似,我们使用 docker buildx stop 命令,但这次需要指定要停止的特定实例名称。

让我们停止 mybuilder 实例:

docker buildx stop mybuilder

执行此命令后,Docker 将停止 mybuilder 实例。同样,如果命令执行成功,你可能不会看到任何输出。

为了确认 mybuilder 实例已停止,我们可以使用 docker buildx ls 命令列出构建器实例并检查其状态:

docker buildx ls

检查 docker buildx ls 命令的输出。mybuilder 实例的状态现在应显示为 stopped

NAME/NODE       DRIVER/ENDPOINT STATUS  BUILDKIT
default         docker
  default       default         stopped
mybuilder       docker
  mybuilder     default         stopped

如输出所示,mybuilder 构建器下的 mybuilder 节点状态现已变为 stopped。这确认我们已成功通过名称停止了特定的构建器实例。

总结

在本实验中,我们学习了如何使用 docker buildx 命令管理 Docker 构建器实例。我们首先通过 docker buildx create --name mybuilder 创建了一个名为 mybuilder 的新构建器实例,并使用 docker buildx ls 验证了它的创建。

随后我们探索了如何停止构建器实例。本实验演示了如何停止默认构建器实例,以及如何通过名称停止特定构建器实例。这些步骤对于管理 Docker 构建环境的生命周期至关重要。