我正在使用最新的 gitlab 和集成的 docker 注册表。对于每个项目,我创建了一个单独的部署 token 。在我要部署镜像的主机上docker login https://registry.example.com/project1
,输入部署 token 并获得成功。拉图像只是工作正常。
在同一台主机上,我需要从同一注册表部署另一个镜像。所以我做 docker login https://registry.example.com/project2
,部署 token (与 token 1 不同,因为每个项目都有自己的部署 token )并获得成功。
然而在 .docker/config.json
我可以看到 docker 只存储域,而不是完整的 url,因此用新的替换旧的身份验证 token 。所以我现在只能拉图像 2,但不能再拉图像 1。
这是 docker 中的错误吗?如何为同一个注册表使用多个 auth/deploy token ?
您可以使用 --config Docker 客户端将多个凭据存储到不同路径的选项:
docker --config ~/.project1 login registry.example.com -u <username> -p <deploy_token>
docker --config ~/.project2 login registry.example.com -u <username> -p <deploy_token>
docker --config ~/.project1 pull registry.example.com/project1
docker --config ~/.project2 pull registry.example.com/project2
关于docker - 如何为同一个 docker 注册表使用多个身份验证/登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50177884/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |