You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用docker -H选项连接远程主机时如何指定SSH私钥文件

Docker远程SSH连接指定私钥解决方案

方案1:配置SSH规则永久生效

编辑本地SSH用户配置文件 ~/.ssh/config(Windows系统路径为C:\Users\用户名\.ssh\config),添加以下配置:

Host <替换为远程主机IP地址>
  User ec2-user
  IdentityFile <替换为你的.pem私钥文件绝对路径>
  IdentitiesOnly yes

配置完成后执行权限修正,避免SSH安全校验失败:

chmod 600 ~/.ssh/config
chmod 600 <你的.pem私钥文件绝对路径>

后续执行Docker命令不需要做任何修改,原有命令即可正常运行:

docker -H ssh://<远程主机IP地址> container ls

方案2:单次命令临时指定私钥

如果不想修改全局SSH配置,可以通过DOCKER_SSH环境变量自定义SSH执行参数,单次调用时直接指定私钥:

DOCKER_SSH="ssh -i <你的.pem私钥文件绝对路径>" docker -H ssh://ec2-user@<远程主机IP地址> container ls

原理解释

SSH默认会自动读取~/.ssh/id_rsa作为默认私钥文件,这也是你将pem文件重命名为id_rsa后命令可以正常执行的原因。上述两种方案都是主动指定私钥路径,无需修改原有私钥的文件名。

内容的提问来源于stack exchange,提问作者gfree

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 22:54:04