之前openstack平台由于停电等影响,导致之前制作的registry 私有仓库的主机挂掉,还好数据挂载在nfs中,然后现在尝试重新启动恢复。
虚机安装nfs服务
apt-get install -y nfs-common
编辑 /etc/fstab
写入远程挂载地址
10.50.8.12:/export/DockerRepo /var/lib/docker/registry nfs defaults 0 0
然后进行挂载:
mount -a -v
输出如下结果,表明mount成功
1
2
3
4
|
root@docker-registry: /home/ubuntu # mount -a -v
mount .nfs: timeout set for Thu Mar 26 13:12:44 2015
mount .nfs: trying text-based options 'vers=4,addr=10.50.8.12,clientaddr=10.0.0.244'
nothing was mounted
|
可以用df来查看:
1
2
3
4
5
6
7
8
9
10
|
root@docker-registry: /home/ubuntu # df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 165106028 1780156 156584392 2% /
none 4 0 4 0% /sys/fs/cgroup
udev 8211996 12 8211984 1% /dev
tmpfs 1643392 348 1643044 1% /run
none 5120 0 5120 0% /run/lock
none 8216952 0 8216952 0% /run/shm
none 102400 0 102400 0% /run/user
10.50.8.12: /export/DockerRepo 515931136 683008 489017344 1% /var/lib/docker/registry
|
创建新的registry
命令如下
# docker run -d -p 5000:5000 -v /var/lib/docker/registry:/tmp/registry registry
其中 -p是与主机进行端口映射,-v表示将主机的volume挂载到容器中,即将我们的nfs挂载到容器中,作为Docker 私有仓库的存储使用。
查看是否创建成功
用curl命令来search其中的仓库文件是否存在:
1
2
|
root @docker -registry:/var/lib/docker/registry/images# curl http: //127.0.0.1:5000/v1/search
{ "num_results" : 8 , "query" : "" , "results" : [{ "description" : null , "name" : "shipyard/rethinkdb" }, { "description" : null , "name" : "shipyard/shipyard" }, { "description" : null , "name" : "shipyard/shipyard-cli" }, { "description" : null , "name" : "library/mysql" }, { "description" : null , "name" : "library/ubuntu" }, { "description" : null , "name" : "library/registry" }, { "description" : null , "name" : "library/centos" }, { "description" : null , "name" : "tutum/influxdb" }]}
|
测试私有仓库
从私有仓库拉取ubuntu:14.04镜像。
1
2
3
4
5
6
7
8
|
root@docker-registry: /var/lib/docker/registry/images # docker pull 127.0.0.1:5000/ubuntu:14.04
Pulling repository 127.0.0.1:5000 /ubuntu
2103b00b3fdf: Download complete
511136ea3c5a: Download complete
f0dde87450ec: Download complete
76b658ecb564: Download complete
4faa69f72743: Download complete
Status: Downloaded newer image for 127.0.0.1:5000 /ubuntu :14.04
|
然后可以通过docker images来查看存在的images:
1
2
3
4
5
|
root@docker-registry: /var/lib/docker/registry/images # docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
registry latest e33e81d7024c 5 days ago 413.7 MB
127.0.0.1:5000 /ubuntu latest 2103b00b3fdf 2 weeks ago 192.7 MB
127.0.0.1:5000 /ubuntu 14.04 2103b00b3fdf 2 weeks ago 192.7 MB
|
从私有仓库只需要10多秒即可将ubuntu的200多m的镜像给pull下来。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!