【问题标题】:how to replace the default ssh key to get access to docker-machine如何替换默认的 ssh 密钥以访问 docker-machine
【发布时间】:2015-11-18 06:31:53
【问题描述】:

我正在使用 docker-machine 创建开发环境。我想更改 docker-machine 默认 ssh 密钥。

我检查了我的新机器的配置:

docker-machine config develop
--tlsverify --tlscacert="/Users/robe/.docker/machine/machines/develop/ca.pem" --tlscert="/Users/robe/.docker/machine/machines/develop/cert.pem" --tlskey="/Users/robe/.docker/machine/machines/develop/key.pem" -H=tcp://192.168.99.103:2376

当我尝试使用密钥访问时:

--tlskey="/Users/robe/.docker/machine/machines/develop/key.pem"

使用这个命令:

ssh -i /Users/robe/.docker/machine/machines/develop/key.pem docker@192.168.99.103

然后我得到了输入密码的提示。那么为什么我无法使用此访问密钥访问我的虚拟机。

  • 我还需要进行任何其他配置吗?
  • 是否可以指定新密钥?
  • 使用 ssh 密钥连接访问的 docker 用户密码是多少?

有什么帮助吗?

【问题讨论】:

    标签: docker ssh-keys boot2docker docker-machine


    【解决方案1】:

    您尝试使用的密钥是用于保护与远程 docker 代理的 SSL 连接的 SSL 密钥。它不是 SSH 密钥(不同的格式)。

    为每台创建的机器生成 SSH 密钥。尝试以下命令获取 ssh 访问权限:

    docker-machine ssh development 
    

    一个更复杂的解决方案是:

    ssh -i ~/.docker/machine/machines/development/id_rsa docker@$(docker-machine ip development) 
    

    【讨论】:

    • 这就是解决方案。
    • 我能够使用第二种解决方案通过 ssh 进入 docker 主机,并设置端口转发到我的本地机器,这是普通 docker-machine ssh 无法做到的。
    • @Suchipi 也许它是最近才添加的,但本地转发与docker-machine ssh name -L 5000:localhost:5000 一起工作正常
    • 您也可以使用ssh-add <key> 永久添加密钥并使用ssh root@<ip-addr> 连接。
    猜你喜欢
    • 1970-01-01
    • 2016-04-28
    • 1970-01-01
    • 1970-01-01
    • 2010-09-10
    • 2019-09-30
    • 1970-01-01
    • 2019-02-22
    • 1970-01-01
    相关资源
    最近更新 更多