使用REST API将Docker镜像推送到私人注册表时,X-Registry-Auth头文件的内容应该是什么?根据Using Docker API to push to private registry,需要X注册表验证标头。 https://groups.google.com/forum/#!topic/docker-user/vXcA8fsCNZM建议值应该是形式的base64编码的JSON字符串:什么是X-Registry-Auth for Docker推送到私人注册表的内容
{'username': string, 'password': string, 'email': string, 'serveraddress' : string}
设置合适的环境变量后,我所做的:
XRA=`echo "{\"username\": \"${USERNAME}\", \"password\": \"${PASSWORD}\", \"email\": \"${EMAIL_ADDRESS}\", \"serveraddress\" : \"${SERVER_ADDRESS}\"}" | base64 --wrap=0`
curl -v --request POST --header "X-Registry-Auth: $XRA" http://$DOCKER_HOST/v1/images/$REGISTRY/$NAMESPACE/$REPOSITORY?tag=$TAG
,并获得403 Forbidden
响应。
也许问题只是我不知道值应该是什么。我如何确定它们? Docker似乎有办法; sudo docker push $REGISTRY/$NAMESPACE/$REPOSITORY:$TAG
工作得很好。
我能够以此来推到我的泊坞枢纽帐户。然而,如果一个图像已经被第一次使用“docker login”和“docker push”推送,它似乎会更好地工作(至少对我而言)。 – Vish 2016-08-06 05:24:58
您的解决方案适用于我。 – 2017-11-22 10:28:27