我已经将~/.ssh目录从主机挂载到开发对接器容器中,并尝试将部署键添加到入口点中的ssh代理中,如下所示:
#!/bin/bash
set -e
#add the deployment key
if [[ ! -z ${DEPLOYMENT_SSH_KEY} ]] ; then
echo "Adding deployment ssh key ${DEPLOYMENT_SSH_KEY} to ssh agent"
eval $(ssh-agent -s) && ssh-add /.ssh/${DEPLOYMENT_SSH_KEY}
else
echo "Deployment ssh key is not defined"
fi
echo "STARTING PHP FPM, CMD $@"
docker-php-entrypoint "$@"键通常根据日志添加:
pid 8剂 将部署ssh键id_rsa添加到ssh代理中 添加身份:/..ssh/id_rsa (rsa w/o注释)
然而,它实际上没有添加到代理中的密钥,并且我无法从容器中克隆我的repos。容器中执行的命令ssh-add -l如下
无法打开到身份验证代理的连接。
为什么会这样呢?我听说SSH代理转发是另一种选择,但我想知道为什么我尝试过的方法不起作用?
发布于 2017-11-09 09:25:00
因为ssh-add错误消息说“无法连接”,所以它要么找不到SSH_AUTH_SOCK环境变量,要么无法访问包含在该变量中的套接字路径。由于ssh-agent默认使用/tmp作为套接字,因此猜测您的/tmp挂载点在某种程度上是损坏的。
https://stackoverflow.com/questions/47114414
复制相似问题