我想安装使用步骤here和here泊坞窗注册表镜不保存图像minikube
我用,启动注册表镜
docker run -d --restart=always -p 5000:5000 --name registry-mirror -v /Users/proxycache/docker-proxy-cache/data:/var/lib/registry -v /Users/proxycache/docker-proxy-cache/config:/etc/docker/registry registry:2
我的配置看起来命令码头工人注册表镜像
version: 0.1
log:
fields:
service: registry
storage:
cache:
blobdescriptor: inmemory
filesystem:
rootdirectory: /var/lib/registry
delete:
enabled: true
http:
addr: :5000
headers:
X-Content-Type-Options: [nosniff]
health:
storagedriver:
enabled: true
interval: 10s
threshold: 3
proxy:
remoteurl: https://registry-1.docker.io
我没有设置任何证书,因为这只是本地的,而不是绑定到域。
开始后,我能够运行curl -I http://proxycache.local:5000/v2/
,我得到
HTTP/1.1 200 OK
Content-Length: 2
Content-Type: application/json; charset=utf-8
Docker-Distribution-Api-Version: registry/2.0
X-Content-Type-Options: nosniff
Date: Mon, 20 Feb 2017 17:52:21 GMT
我还可以运行curl http://proxycache.local:5000/v2/_catalog
,我得到
{"repositories":[]}
然后我用这个命令minikube start --vm-driver=xhyve --disk-size=40g --memory=8192 --registry-mirror http://proxycache.local:5000 --insecure-registry http://proxycache.local:5000
开始minikube eval $(minikube docker-env)
如果我运行docker info
我得到
Containers: 59
Running: 22
Paused: 0
Stopped: 37
Images: 15
Server Version: 1.11.1
Storage Driver: overlay
Backing Filesystem: extfs
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge null host
Swarm:
NodeID:
Is Manager: false
Node Address:
Init Binary:
containerd version:
runc version:
init version:
Kernel Version: 4.7.2
Operating System: Buildroot 2016.08
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 7.797 GiB
Name: minikube
ID: JGCU:HKNT:AOEL:PRNQ:DRNE:OQAM:2PI2:HSOD:VBPW:4LIN:BHIL:JDOF
Docker Root Dir: /mnt/sda1/var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Username: bot
Registry: https://index.docker.io/v1/
Labels:
provider=xhyve
Experimental: false
Insecure Registries:
127.0.0.0/8
Registry Mirrors:
http://proxycache.local:5000/
Live Restore Enabled: false
在那里说
Registry Mirrors:
http://proxycache.local:5000/
似乎表明minikube是否设置正确
如果我运行docker pull busybox:latest
它下载图像,但不将部分更新镜像。如果我拉目录curl http://proxycache.local:5000/v2/_catalog
它仍然是空的
我还缺少什么?
按这里的要求是我从docker logs registry-mirror
time="2017-02-20T15:15:34Z" level=warning msg="No HTTP secret provided - generated random secret. This may cause problems with uploads if multiple registries are behind a load-balancer. To provide a shared secret, fill in http.secret in the configuration file or set the REGISTRY_HTTP_SECRET environment variable." go.version=go1.6.3 instance.id=f9fc5ef5-0faa-4bdb-b2ef-e5d10d5d5be5 version=v2.5.1
time="2017-02-20T15:15:34Z" level=info msg="redis not configured" go.version=go1.6.3 instance.id=f9fc5ef5-0faa-4bdb-b2ef-e5d10d5d5be5 version=v2.5.1
time="2017-02-20T15:15:34Z" level=info msg="Starting upload purge in 50m0s" go.version=go1.6.3 instance.id=f9fc5ef5-0faa-4bdb-b2ef-e5d10d5d5be5 version=v2.5.1
time="2017-02-20T15:15:34Z" level=info msg="using inmemory blob descriptor cache" go.version=go1.6.3 instance.id=f9fc5ef5-0faa-4bdb-b2ef-e5d10d5d5be5 version=v2.5.1
time="2017-02-20T15:15:34Z" level=info msg="Starting cached object TTL expiration scheduler..." go.version=go1.6.3 instance.id=f9fc5ef5-0faa-4bdb-b2ef-e5d10d5d5be5 version=v2.5.1
time="2017-02-20T15:15:34Z" level=info msg="Registry configured as a proxy cache to https://registry-1.docker.io" go.version=go1.6.3 instance.id=f9fc5ef5-0faa-4bdb-b2ef-e5d10d5d5be5 version=v2.5.1
time="2017-02-20T15:15:34Z" level=info msg="listening on [::]:5000" go.version=go1.6.3 instance.id=f9fc5ef5-0faa-4bdb-b2ef-e5d10d5d5be5 version=v2.5.1
这是你正在使用的完整运行脚本吗?正如在教程中,它似乎表明你需要在'registry:2'之后使用'registry:2/var/lib/registry/config.yml',但你似乎没有这个 – jrbeverly
你应该也发布docker为初始启动记录registry-mirror'。我会好奇的是,有两种情况:1)前面的注释中提到的config.yml的链接是否正确,以及2)从config.yml中删除delete,看看是否可以获得HTTP 200 '代码从注册表 – jrbeverly
我删除了删除,没有任何改变,但我质疑,如果它甚至读我的配置摆在首位。我之所以没有包含像本教程所说的配置,是因为我在config -v/Users/proxycache/docker-proxy-cache/config:/ etc/docker/registry'的原始位置包含了一个卷。但是,当我在启动脚本的末尾包含配置文件时,在docker logs配置错误中出现错误:open /Users/proxycache/docker-proxy-cache/config/config.yml:no such file or directory'文件确实存在,并且拥有755个权限。 – ryanmc