我们能够将docker容器构建并推送到GITLAB CE中的私有注册表。但是,由于我们的部署过程,我们希望将相同的构建也推送到另一个存储库。但是用新的repo名称标记并推送它会导致授权问题。有任何建议如何实现这一目标吗?
答案 0 :(得分:0)
您可能想要在尝试实际推送之前登录到您要推送的注册表
docker login -p password -u username my.private.registry.com
docker build ...
docker push my:tag my.private.registry/my:tag
您还可以阅读有关运行本地注册表的文档,以获取有关构建新标记的语法的提示: https://docs.docker.com/registry/deploying/#run-a-local-registry
答案 1 :(得分:0)
您需要做的是复制您为第一个存储库执行的步骤。
因此,如果您是针对第一个步骤运行这些步骤:
docker login -p password -u user registry.1.com
docker build
docker push
然后,您需要重新登录到下一个存储库。如果您对下一个存储库所做的只是更改地址,那么您将不会通过该存储库进行身份验证。
docker login -p password -u user registry.2.com
docker build
docker push
确保将您的凭据作为变量。如果您使用的是AWS ECR,则可以执行以下步骤:运行aws ecr get-login
命令,并将其输出到eval
中,以将其传递给文件。