首页  >  文章  >  后端开发  >  如何访问Docker容器中的私有GitHub仓库?

如何访问Docker容器中的私有GitHub仓库?

Susan Sarandon
Susan Sarandon原创
2024-11-09 12:41:01809浏览

How to Access Private GitHub Repositories in Docker Containers?

Docker:从私有 GitHub 存储库获取

问题:

尝试在 Docker 中使用私有 GitHub 存储库时容器公开 Go 服务时,go get 过程中发生错误,引用了公钥验证问题。如何解决这个问题?

答案:

1.确保正确的 SSH 密钥权限:

  • 验证添加到 Dockerfile 的私有和公共 SSH 密钥(priv/id_rsa 和 priv/id_rsa.pub)是否具有适当的权限(例如 chmod 600 或chmod 700)。

2。强制使用 SSH 进行 Git 操作:

  • 将以下行添加到 Dockerfile: RUN git config --global url.ssh://[email protected]/.in​​steadOf https ://github.com/,强制 git 使用 SSH 而不是 HTTPS。

3. Dockerfile 示例:

FROM golang

RUN apt-get update && apt-get install -y ca-certificates git-core ssh

ADD keys/my_key_rsa /root/.ssh/id_rsa
RUN chmod 700 /root/.ssh/id_rsa
RUN echo "Host github.com\n\tStrictHostKeyChecking no\n" >> /root/.ssh/config
RUN git config --global url.ssh://[email protected]/.insteadOf https://github.com/

ADD . /go/src/github.com/myaccount/myprivaterepo

RUN go get github.com/myaccount/myprivaterepo
RUN go install github.com/myaccount/myprivaterepo

此修改后的 Dockerfile 包含 SSH 配置,并强制使用 SSH 进行 Git 操作,解决了 go get 过程中遇到的问题。

以上是如何访问Docker容器中的私有GitHub仓库?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn