默认情况下,Docker 使用本地 UNIX 套接字进行通信。它还支持通过 SSH 或 TLS(HTTPS)套接字进行远程通信。
下面的示例演示如何创建一个 Docker context,使用 SSH,并以远程计算机上的用户身份连接到远程 Dockerd 守护进程(示例主机为 host1.example.com)。

创建上下文后,运行 docker context use 命令切换到该上下文,从而让 CLI 连接到远程引擎:

若要切换回本地默认守护进程,请切换回 default 上下文:

或者,可以通过设置 DOCKER_HOST 环境变量,临时让 Docker CLI 使用 SSH 连接到远程主机,无需创建上下文。这非常适合对不同引擎进行临时连接的场景:

SSH 使用技巧
为获得更佳的 SSH 使用体验,请在 ~/.ssh/config 中添加以下设置,以便将 SSH 连接高效复用到 Docker CLI 的多次调用:
ControlMaster auto
ControlPath ~/.ssh/control-%C
ControlPersist yes
