Docker:如何使用ssh访问私有github仓库?

 锦瑟刻下两段缠绵 发布于 2023-01-04 14:25

我正在尝试使用Docker克隆来自github的私人仓库.问题是我需要使用ssh来访问该repo.我在我的github项目设置中添加了一个密钥,我想,它用于识别docker的服务器.

我的问题是我无法弄清楚我应该在Dockerfile中写什么,以便服务器在尝试访问我的github仓库时使用该密钥.我看到了将id_rsa添加到容器中的示例,但我不知道id_rsa存储在其服务器上的位置(如果存在)

RUN mkdir /root/.ssh/
# can't find the file id_rsa
ADD id_rsa /root/.ssh/id_rsa 
RUN touch /root/.ssh/known_hosts
RUN ssh-keyscan github.com >> /root/.ssh/known_hosts

run git clone git@github.com:user/repo.git

如何从docker的服务器访问我的私人仓库?

1 个回答
  • 我设法通过在密钥上使用ssh-add来完成此操作.

    使用多个RUN指令的"问题" 是非持久性数据在下一个不可用RUN.我设法登录并使用github私人回购

    RUN eval `ssh-agent -s` && \
        ssh-add id_rsa && \
        git clone git@github.com:user/repo.git
    

    通过&&在单个CMD上使用,eval进程仍将运行,并且当您连接到github时,ssh-agent已加载密钥.

    我希望这有帮助.

    2023-01-04 14:29 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有