【问题标题】:How to mount private SSH key to Docker for Windows container?如何将私有 SSH 密钥挂载到 Docker for Windows 容器?
【发布时间】:2020-02-12 18:55:29
【问题描述】:
大家好。
我有以下开发环境:
- Win 10 主机
- Docker Desktop for Windows 最新版
- php5.6 镜像通过 docker-compose 在容器中运行
如何将我的私有 SSH 密钥挂载到此容器?或者有没有可能将 Pageant 从主机隧道传输到容器?
我只想在我的容器中运行 Capifony 部署程序。
【问题讨论】:
标签:
docker
ssh
docker-compose
docker-desktop
pageant
【解决方案1】:
您可以使用带有-v /c/Users/<user>/.ssh/id_rsa:/<home dir>/.ssh/id_rsa:ro 的卷。
home 是用户的~,例如/root,/,/home/<user>。 :ro 会将其设为只读,因此您的密钥不会被意外覆盖。
映射到容器中的密钥的权限会太宽,但是通过管道将密钥传递到 ssh-add 会绕过这个:
cat ~/.ssh/id_rsa | ssh-add -
根据您的容器,ssh-agent 可能尚未运行:
eval `ssh-agent`