Docker:谷歌/docker – registry容器的使用
Google / docker-registry容器是否仅用于从Google云端存储推送/提取图片? 我目前在Git上遵循他们的指示 ,并运行docker-registry容器,但似乎无法从我的桶中拉出来。
我开始与它:
sudo docker run -d -e GCS_BUCKET=mybucket -p 5000:5000 google/docker-registry
我在云存储中存储了一个.tar Docker镜像,位于mybucket / imagename.tar。 但是,当我执行:
sudo docker pull localhost:5000/imagename.tar
它导致:
2014/07/10 19:15:50 HTTP代码:404
我做错了吗?
您需要将docker push
送到registry,而不是手动复制您的图像焦油。
从你的形象是:
docker run -ti --name gcloud-config google/cloud-sdk \ gcloud auth login docker run -ti --volumes-from gcloud-config google/cloud-sdk \ gcloud config set project <project> docker run -d -e GCS_BUCKET=bucketname -p 5000:5000 \ --volumes-from gcloud-config google/docker-registry docker tag imagename localhost:5000/imagename docker push localhost:5000/imagename
然后从你要运行图像的地方(例如:GCE)开始:
docker run -d -e GCS_BUCKET=bucketname -p 5000:5000 google/docker-registry docker run localhost:5000/imagename
当使用谷歌/dockerregistry它被预先configuration使用谷歌桶。
它应该适用于任何存储(如果configuration被覆盖),但它的目的是用于谷歌基础设施。
在没有dockerregistry的情况下,应该使用导出图像的tar文件在Docker主机之间手动移动图像。
您不应该将tarfile upload到存储桶。
要上传图片,您应该推送到dockerregistry容器,它会将图像保存在存储桶中。
运行Dockerregistry容器的Google云计算实例必须configuration为具有对存储区的读/写访问权限。