互联网技术 / 互联网资讯 · 2023年12月18日 0

通过 SSH 保护 Docker 守护进程的核心技术教程

默认情况下,Docker 使用本地 UNIX 套接字进行通信。它还支持通过 SSH 或 TLS(HTTPS)套接字进行远程通信。

下面的示例演示如何创建一个 Docker context,使用 SSH,并以远程计算机上的用户身份连接到远程 Dockerd 守护进程(示例主机为 host1.example.com)。

通过 SSH 保护 Docker 守护进程的核心技术教程

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

通过 SSH 保护 Docker 守护进程的核心技术教程

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

通过 SSH 保护 Docker 守护进程的核心技术教程

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

通过 SSH 保护 Docker 守护进程的核心技术教程

SSH 使用技巧

为获得更佳的 SSH 使用体验,请在 ~/.ssh/config 中添加以下设置,以便将 SSH 连接高效复用到 Docker CLI 的多次调用:

ControlMaster auto

ControlPath ~/.ssh/control-%C

ControlPersist yes