1. 环境准备
Linux版本:Centos7
docker版本:17.05.0-ce
2. 部署Registry
使用docker pull命令获取registry的image
[plain]
view plain
copy
1. # sudo docker pull registry:2.1.1
使用docker run使用下载的registry的image启动一个容器
[plain]
view plain
copy
1. # sudo docker run -d -p 5000:5000 -v /opt/registry:/var/lib/registry --restart=always --name registry registry:2.1.1
查看启动的容器
[plain]
view plain
copy
1. # sudo docker ps
2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3. ebb16548e9d3 registry:2.1.1 "/bin/registry /et..." 12 seconds ago Up 11 seconds 0.0.0.0:5000->5000/tcp registry
打开浏览器,访问http://IP:5000/v2/_catalog,可以查看到{"repositories": []}表示现在仓库中,没有镜像images
现在,下载一个镜像,然后传到本地仓库中,以下以busybox镜像为例
[plain]
view plain
copy
1. # sudo docker pull busybox
2. Using default tag: latest
3. latest: Pulling from library/busybox
4. 27144aa8f1b9: Pull complete
5. Digest: sha256:be3c11fdba7cfe299214e46edc642e09514dbb9bbefcd0d3836c05a1e0cd0642
6. Status: Downloaded newer image for busybox:latest
7. # sudo docker images
8. REPOSITORY TAG IMAGE ID CREATED SIZE
9. busybox latest c30178c5239f Less than a second ago 1.11 MB
10. hello-world latest 1815c82652c0 20 hours ago 1.84 kB
11. registry 2.1.1 52bb991b482e 20 months ago 220 MB
在本地host上面,给busybox添加新的tag
[plain]
view plain
copy
1. # sudo docker tag busybox 192.168.61.128:5000/busybox
2. # sudo docker images
3. REPOSITORY TAG IMAGE ID CREATED SIZE
4. 192.168.61.128:5000/busybox latest c30178c5239f Less than a second ago 1.11 MB
5. busybox latest c30178c5239f Less than a second ago 1.11 MB
6. hello-world latest 1815c82652c0 20 hours ago 1.84 kB
7. registry 2.1.1 52bb991b482e 20 months ago 220 MB
将镜像上传到仓库中
[plain]
view plain
copy
1. # sudo docker push 192.168.61.128:5000/busybox
2. The push refers to a repository [192.168.61.128:5000/busybox]
3. Get https://192.168.61.128:5000/v1/_ping: http: server gave HTTP response to HTTPS client
出现上述提示,表示本地的仓库默认使用的是https进行上传,如果是非https就会出现以上的提示
解决方式,可以参考一下方式
修改文件/usr/lib/systemd/system/docker.service,在ExecStart=/usr/bin/dockerd后面添加--insecure-registry 192.168.61.128:5000,然后重启docker服务
[plain]
view plain
copy
1. # cat /usr/lib/systemd/system/docker.service
2. [Unit]
3. Description=Docker Application Container Engine
4. Documentation=https://docs.docker.com
5. After=network.target firewalld.service
6.
7. [Service]
8. Type=notify
9. # the default is not to use systemd for cgroups because the delegate issues still
10. # exists and systemd currently does not support the cgroup feature set required
11. # for containers run by docker
12. ExecStart=/usr/bin/dockerd --insecure-registry 192.168.61.128:5000
13. ExecReload=/bin/kill -s HUP $MAINPID
14. # Having non-zero Limit*s causes performance problems due to accounting overhead
15. # in the kernel. We recommend using cgroups to do container-local accounting.
16. LimitNOFILE=infinity
17. LimitNPROC=infinity
18. LimitCORE=infinity
19. # Uncomment TasksMax if your systemd version supports it.
20. # Only systemd 226 and above support this version.
21. #TasksMax=infinity
22. TimeoutStartSec=0
23. # set delegate yes so that systemd does not reset the cgroups of docker containers
24. Delegate=yes
25. # kill only the docker process, not all processes in the cgroup
26. KillMode=process
27.
28. [Install]
29. WantedBy=multi-user.target
30. # sudo systemctl daemon-reload && sudo systemctl restart docker.service
重新上传
[plain]
view plain
copy
1. # sudo docker push 192.168.61.128:5000/busybox
2. The push refers to a repository [192.168.61.128:5000/busybox]
3. 3a1dff9afffd: Pushed
4. latest: digest: sha256:417ae70baa235876876e723f4b630afa7f91a113025d70361597656b5cf0481b size: 2136
打开浏览器,访问http://IP:5000/v2/_catalog,可以查看到{"repositories": ["busybox"]}表示现在仓库中,存在镜像busybox这一个
docker私有仓库registry的本地搭建
原创
©著作权归作者所有:来自51CTO博客作者周成乐的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Apt 本地源仓库搭建
Ubuntu Apt 本地源仓库搭建
ubuntu nginx vim apt源 本地从仓库 -
Day05-docker-仓库
仓库的应用、一些小细节
docker json -
springboot 常见的内存泄漏
文章目录1、服务监控的实现思路2、SpringBoot Admin服务端3、SpringBoot Admin客户端4、实现原理--Actuator与端点5、关于端点 1、服务监控的实现思路监控的意义:监控服务状态是否宕机监控服务运行指标:内存、虚拟机、线程、请求等监控日志管理服务:服务下线与启动当要监控的服务很多时,一个个去查看很不方便,因此考虑引入一个显示所有服务监控信息的服务。这个服务如果只
springboot 常见的内存泄漏 spring boot 后端 java SpringBootAdmin