我在 GitHub 上有两个私有存储库,名为dashboard
and ui
。我定义了ui
作为 git 子模块dashboard
,我将 docker 配置为自动构建dashboard
关于特定分支上的每个更改。
我读过这个文档https://docs.docker.com/docker-hub/builds/,但是当我尝试在我的中设置 docker 给出的部署密钥时ui
的设置中,显示“密钥已在使用中”。事实上,该密钥已被使用dashboard
允许 docker 自动构建这个仓库!
这是我的 Docker 构建日志:
Error:
Failed to clone repository: Cloning into '/tmp/build_byaxhis7sznbvmb6wgwzm6n'...
Submodule 'app/styles/ui' ([email protected]:yllieth/ui.git) registered for path 'app/styles/ui'
Cloning into 'app/styles/ui'...
Warning: Permanently added 'github.com,192.30.252.130' (RSA) to the list of known hosts.
ERROR: Repository not found.
fatal: The remote end hung up unexpectedly
Clone of '[email protected]:yllieth/ui.git' into submodule path 'app/styles/ui' failed
Dockerfile: None
即使我在我的目录中定义了一个 Dockerfile,Docker 也找不到任何 Dockerfiledashboard
回购。因此,我无法向其提供任何说明或添加另一个 SSH 密钥。
如果有人知道如何将自动构建与私有存储库和 git 子模块结合使用,我很感兴趣!
如果您的 GitHub 存储库包含指向私有子模块的链接,您将在构建中收到错误消息。通常,Docker Hub 会在您的 GitHub 存储库中设置部署密钥。不幸的是,GitHub 只允许存储库部署密钥访问单个存储库。作为解决方法,您需要创建一个专用用户帐户在 GitHub 中并将自动构建的部署密钥附加到该帐户。此专用构建帐户可以限制为只读访问仅用于构建所需的存储库。
一个人已经在 docker 中发起了更新的拉取请求document。
他还提供了可能帮助您解决此问题的屏幕截图。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)