建立docker的本地私有仓库
使用
docker pull
是直接拉取公网的镜像,我们也可以使用registry来建立一个docker的本地仓库
拉取registry镜像
[root@localhost ~]# docker pull registry
Using default tag: latest
latest: Pulling from library/registry
cbdbe7a5bc2a: Pull complete
47112e65547d: Pull complete
46bcb632e506: Pull complete
c1cc712bcecd: Pull complete
3db6272dcbfa: Pull complete
Digest: sha256:8be26f81ffea54106bae012c6f349df70f4d5e7e2ec01b143c46e2c03b9e551d
Status: Downloaded newer image for registry:latest
docker.io/library/registry:latest
添加仓库地址
vim /etc/docker/daemon.josn
{
"insecure-registries": ["20.0.0.3:5000"],
"registry-mirrors": ["https://xj8oicr9.mirror.aliyuncs.com"]
}
~
~
systemctl restart docker
运行容器
[root@localhost ~]# docker create -it registry /bin/bash
f6f6ed878f3d751bf804d2b6dd492f8754329eb024b9c3a825b33d5577d9f7c9
[root@localhost ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f6f6ed878f3d registry "/entrypoint.sh /bin…" 9 seconds ago Created naughty_kilby
713446479d3a centos7:httpd "/run.sh" 7 hours ago Exited (137) 2 minutes ago distracted_moore
c7e296d909c1 portainer/portainer "/portainer" 26 hours ago Exited (2) 2 minutes ago dev-portainer
[root@localhost ~]# docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry
dbddb8e5fb9a37855637a9e1f321f42d4cbb002674d9378f0da9224dddc6da56
标记镜像并上传镜像
[root@localhost ~]# docker tag nginx:latest 20.0.0.3:5000/nginx
[root@localhost ~]# docker push 20.0.0.3:5000/nginx
The push refers to repository [20.0.0.3:5000/nginx]
7e914612e366: Pushed
f790aed835ee: Pushed
850c2400ea4d: Pushed
7ccabd267c9f: Pushed
f5600c6330da: Pushed
latest: digest: sha256:99d0a53e3718cef59443558607d1e100b325d6a2b678cd2a48b05e5e22ffeb49 size: 1362
查看私有仓库镜像并下载
[root@localhost ~]# curl -XGET http://20.0.0.3:5000/v2/_catalog
{"repositories":["nginx"]}
[root@localhost ~]# docker pull 20.0.0.3:5000/nginx
Using default tag: latest
latest: Pulling from nginx
852e50cd189d: Pull complete
571d7e852307: Pull complete
addb10abd9cb: Pull complete
d20aa7ccdb77: Pull complete
8b03f1e11359: Pull complete
Digest: sha256:99d0a53e3718cef59443558607d1e100b325d6a2b678cd2a48b05e5e22ffeb49
Status: Downloaded newer image for 20.0.0.3:5000/nginx:latest
20.0.0.3:5000/nginx:latest