从Docker容器克隆私有Github存储库

时间:2019-07-30 17:59:28

标签: docker github

我需要创建一个Docker映像,该映像将克隆Github存储库(作为参数发送)并对其执行一些操作。对于公共存储库,我没有问题,但是对于私有存储库,如何将它们克隆到Docker容器中?

1 个答案:

答案 0 :(得分:3)

我们已完成以下操作:

  • 创建一个将用于读取存储库的GitHub帐户
  • 为此帐户创建一个私钥
  • 询问要我们阅读其存储库的人员,将此用户添加到具有只读访问权限的存储库中

然后,在需要读取存储库的Docker映像中,我们具有以下内容:

COPY github.pub /root/.ssh/id_rsa.pub
RUN chmod 700 /root/.ssh/id_rsa.pub
COPY github /root/.ssh/id_rsa
RUN chmod 700 /root/.ssh/id_rsa
RUN chown -R root:root /root/.ssh
RUN touch /root/.ssh/known_hosts
RUN echo "Host github.com\n\tStrictHostKeyChecking no\n" >> /root/.ssh/config

guthub.pubgithub是SSH密钥的文件。

使用这种机制,您只需要让他们将您的GitHub帐户添加为该存储库的读取者即可,而无需要求人们提供私钥或更复杂的设置,这非常方便。