前面介绍过拉取镜像文件docker的简单使用
1,拉取registry 镜像
docker pull registry
docker images
查看镜像(可以看到registry)
2,启动该镜像:
docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/docker/overlay2 registry
i: 保持sdtin开放状态
d: 使容器以守护进程方式后台运行,并打印容器id
t: 分配一个tty(虚拟终端设备)
v: 绑定挂载一个容器内的路径到宿主机路径
p: 映射一个容器的端口到宿主机端口
restart: 当容器退出时的重启策略
name: 给容器命名一个名称
以上以启动了registry并指定了挂载宿主机的目录就可以往里面塞东西了
3, 塞一个镜像试试:
docker pull hello-world
拉取一个hello-world镜像
docker tag hello-world 127.0.0.1:5000/hello-world
更改一下标签
docker images
再查看一下镜像目录
docker push 127.0.0.1/hello-word
就可以把这个镜像放在自己搭建的本地仓库了
这里要注意下了当我第一次塞进去的时候出现了一个问题:
这里我通过百度发现需要更改一下centos 下的usr/lib/systemd/system/docker.service文件
在ExecStart=/usr/bin/dockerd
后面添加上--insecure-registry 127.0.0.1:5000
,
然后:
systemctl daemon-reload
让配置文件生效
systemctl restart docker
重新运行docker
再次运行docker push 127.0.0.1/hello-word
到这里就成功的push一个镜像到私有库了
curl -XGET http://127.0.0.1:5000/v2/_catalog
# 查看私有库里的内容:
{"repositories":["hello-world"]}