一尘不染

从swarm管理器运行docker exec

docker

我有两个工作程序节点:worker1和worker2和一个群集管理器。我仅在工作程序节点中运行所有服务。我需要从manager docker
exec运行,以访问在工作节点中创建的一些容器,但我不断得到该服务未被识别的信息。我知道我可以在任何一个工作节点上运行docker
exec,并且运行良好,但是我不想找到服务正在哪个节点上运行,然后SSH到指定的节点以运行docker exec命令。有没有办法做到这一点?


阅读 298

收藏
2020-06-17

共1个答案

一尘不染

Swarm模式当前尚无法在正在运行的任务上运行exec。您需要找到容器并在主机上运行exec。您可以配置工作程序以使其监听其受TLS保护的端口,这将为您提供远程访问权限(请参阅docker’s
guide
)。您可以通过检查的输出来查找服务中每个任务的节点docker service ps $service_name

2020-06-17