Docker-搭建Docker Registry
私有Docker Registry的部署和配置从Docker Hub上可以获取官方的Registry的镜像,Registry 默认的对外服务端口是 5000,如果我们宿主机上运行的 Registry 需要对外提供服务,可以通过映射端口的方式提供。
docker pull registry//获取registry镜像文件
docker images//查看本地的registry镜像文件
REPOSITORY TAG IMAGE ID CREATED SIZE
registry latest 047218491f8c 4 days ago 33.17 MB
docker run -d -p 5000:5000 --restart=always --name registry registry:latest//运行一个registry的容器
验证
1 如果/var/lib/registry映射到宿主机器的目录(比如/opt/registry),可以push一个镜像到本地的registry,然后会在/opt/registry下找到镜像相关的内容
2 通过registry提供的API方式:
# curl http://127.0.0.1:5000/v2/_catalog
{"repositories":["mongodb"]}
# curl http://127.0.0.1:5000/v2/mongodb/tags/list
{"name":"mongodb","tags":["1.0"]}
使用Registry管理仓库和镜像
1、推送镜像
使用docker push可以将本地的镜像推送到本地的仓库
$ docker tag rhel-httpd registry-host:5000/myadmin/rhel-httpd
$ docker push registry-host:5000/myadmin/rhel-httpd
2、获取镜像
使用docker pull可以获取仓库中的镜像,比如
docker pull registry-host:5000/myadmin/rhel-httpd
Docker Registry的配置
Docker Registry的配置是基于一个YAML文件,所以可以在创建Registry容器的时候把已经编辑好的YAML文件拷贝进去,也可以在创建容器的时候通过命令传入配置项。
拷贝YAML文件的例子:
$ docker run -d -p 5000:5000 --restart=always --name registry \
-v `pwd`/config.yml:/etc/docker/registry/config.yml \
registry:2
详细的配置参考官方配置说明。
页:
[1]