将我的Windows密钥从我的docker容器中输出

读完这个线程之后 ,我无法100%地向我的密钥发起攻击,在我应该运行“ssh-add”的步骤中我被阻止。

这里是我的docker-compose.yml的一部分:

engine: build: ./docker/engine/ volumes: - "./:/var/www/docker:rw" - "./docker/engine/php.ini:/usr/local/etc/php/conf.d/custom.ini:ro" - $SSH_AUTH_SOCK:/tmp/agent.sock environment: - SSH_AUTH_SOCK=/tmp/agent.sock 

在我的容器上,当我用printenv打印文件时,我可以毫无问题地看到文件“/tmp/agent.sock”和ENV var“SSH_AUTH_SOCK”。

之后,我启动ssh-agent:

 `eval `ssh-agent -s` 

然后我添加ssh-key:

 ssh-add 

但是,如果我打印最后一个错误(echo $?),我得到1

从doc:成功退出状态为0,如果指定的命令失败,则为1,如果ssh-add无法联系身份validation代理,则为2。

我尝试了这么多的东西,我没有其他的想法,我已经访问了所有可能的链接在谷歌(该死)

如果你有一个解决scheme(或path),你将成为我的英雄!

谢谢。

同样在这里,

没有问题的Linux共享〜/ .ssh通过音量,在Windows上这是另一回事。 我设法把我的密钥放在容器的/.ssh文件夹中,但是docker认为它们太开了(chmod> 600),所以composer php安装或者类似的东西是不可能的。 我不知道这是否可能与Linux读取NTFS权限或类似的方式有关。

无论哪种方式,这是行不通的,我尝试了许多权限的变化

编辑:我已经发布在Github,我们可以从那里得到一些帮助: https : //github.com/docker/docker/issues/27685