Docker私有仓库 Registry中的镜像管理
这里主要介绍Registry v2的版本
查看Registry仓库中现有的镜像:
# curl -XGET http://10.0.30.6:5000/v2/_catalog
# curl -XGET http://10.0.30.6:5000/v2/mymirrors/tags/list
新版Registry部署
详情参考官方文档:https://docs.docker.com/registry/deploying/
# docker run -d -p 5000:5000 --restart=always --name registry -v /data/registry:/var/lib/registry registry:2
<宿主机目录>:<容器目录>
--restart=always 该always表示会使docker daemon退出重启后容器服务自动恢复,不必再docker start ...
如何删除私有 registry 中的镜像?
首先,在默认情况下,docker registry 是不允许删除镜像的,需要在配置config.yml
中启用:vim /etc/docker/registry/config.yml
version: 0.1
log:
fields:
service: registry
storage:
delete:
enable: true
cache:
blobdescriptor: inmemory
filesystem:
rootdirectory: /var/lib/registry
http:
addr: :
headers:
X-Content-Type-Options: [nosniff]
health:
storagedriver:
enabled: true
interval: 10s
threshold:
使用 API GET /v2/<镜像名>/manifests/<tag>
来取得要删除的镜像:Tag
所对应的 digest
。
比如,要删除 house/hello:latest
镜像,那么取得 digest
的命令是:
curl --header "Accept: application/vnd.docker.distribution.manifest.v2+json" -I -X HEAD http://10.0.30.6:5000/v2/house/hello/manifests/latest
得到 Docker-Content-Digest: sha256:3a07b4e06c73b2e3924008270c7f3c3c6e3f70d4dbb814ad8bff2697123ca33c
然后调用 API DELETE /v2/<镜像名>/manifests/<digest>
来删除镜像。比如:
curl -X DELETE http://192.168.99.100:5000/v2/myimage/manifests/sha256:3a07b4e06c73b2e3924008270c7f3c3c6e3f70d4dbb814ad8bff2697123ca33c
至此,镜像已从 registry
中标记删除,外界访问 pull
不到了。但是 registry
的本地空间并未释放,需要等待垃圾收集才会释放。而垃圾收集不可以在线进行,必须停止 registry
,然后执行。比如,假设 registry
是用 Compose 运行的,那么下面命令用来垃圾收集:
docker-compose stop
docker run -it --name gc --rm --volumes-from registry_registry_1 registry: garbage-collect /etc/registry/config.yml
docker-compose start
其中 registry_registry_1
可以替换为实际的 registry
的容器名,而 /etc/registry/config.yml
则替换为实际的 registry
配置文件路径。
另: 显示容器名字而非ID: docker stats $(docker ps --format='{{.Names}}')
参考资料:http://twang2218.coding.me/post/docker-2016-07-14-faq.html#ru-he-shan-chu-si-you-registry-zhong-de-jing-xiang
Docker私有仓库 Registry中的镜像管理的更多相关文章
- docker 查询或获取私有仓库(registry)中的镜像
docker 查询或获取私有仓库(registry)中的镜像,使用 docker search 192.168.1.8:5000 命令经测试不好使. 解决: 1.获取仓库类的镜像: [root@sha ...
- 转载:教你分分钟搞定Docker私有仓库Registry
一.什么是Docker私有仓库Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候我们的服务器无法 ...
- 教你分分钟搞定Docker私有仓库Registry
一.什么是Docker私有仓库Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候我们的服务器无法 ...
- (转)教你分分钟搞定Docker私有仓库Registry
转:https://www.cnblogs.com/Javame/p/7389093.html 一.什么是Docker私有仓库Registry 官方的Docker hub是一个用于管理公共镜像的好地方 ...
- Docker私有仓库registry的搭建及使用
前言 由于Docker Hub公共仓库很多时候使用这并不是很方便,大分部因为网络的问题可能拉取的时候会很慢或者拉取不到,所以搭建一个本地的私有仓库. 准备 由于此篇文章是在Kubernetes集群安装 ...
- kubernetes部署Docker私有仓库Registry
在后面的部署过程中,有很多的docker镜像文件,由于kubernetes是使用国外的镜像,可能会出现下载很慢或者下载不下来的情况,我们先搭建一个简单的镜像服务器,我们将需要的镜像下载回来,放到我们自 ...
- Docker私有仓库Registry的搭建验证
1. 关于Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候,我们的使用场景需要我们拥有一个私有 ...
- Docker私有仓库Registry 搭建
1. 关于Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候,我们的使用场景需要我们拥有一个私有 ...
- Centos 7上Docker私有仓库Registry实战
1. 关于Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候,我们的使用场景需要我们拥有一个私有 ...
随机推荐
- Java连接mysql数据库
1.先创建一个Java项目testMysql(我使用的是intellij编辑器). 2.导入mysql的驱动包. (1) (2) (4) 3.编写代码 import java.sql.Connecti ...
- ${param.origin}
拦截器中设置未登录拦击跳转链接 response.sendRedirect(request.getContextPath() + "/loginAndRegister/loginAndReg ...
- 快速判断ie10及以上版本浏览器
if (!(/msie [6|7|8|9]/i.test(navigator.userAgent))){ //ie10以上 }; 快速判断ie10及以上版本浏览器
- 转 未能加载类型 xxxx
未能加载类型 分析器错误 说明: 在分析向此请求提供服务所需资源时出错.请检查下列特定分析错误详细信息并适当地修改源文件. 分析器错误信息: 未能加载类型“xxxxx”. 错误的 < ...
- 使用POI设置excel背景色
HSSFCellStyle setBorder1 = workbook.createCellStyle(); HSSFFont font1 = workbook.createFont(); font1 ...
- python集成开发工具
1. IDLE http://python.org/idle/ (在 Python 发行版中自带) 2 BlackAdder 3 PythonWorks 4 Wing IDE http://wingw ...
- java之框架
框架有哪些?C++语言的QT.MFC.gtk,Java语言的SSH,php语言的 smarty(MVC模式),python语言的django(MTV模式)等等设计模式有哪些?工厂模式.适配器模式.策略 ...
- Angular1.x组件通讯方式总结
Angular1开发模式 这里需要将Angular1分为Angular1.5之前和Angular1.5两个不同的阶段来讲,两者虽然同属Angular1,但是在开发模式上还是有较大区别的.在Angula ...
- Spring MVC入门实战(一)
本文主要把一个菜鸟从“只是听说过Spring MVC”到“可以手动创建并运行一个Spring MVC工程”的过程记录下来,供以后复习. 0. 开发环境准备 计算机平台:Windows 7 X64. 需 ...
- 观察者模式及Java实现例子
http://www.cnblogs.com/mengdd/archive/2013/02/07/2908929.html 观察者模式 观察者模式 Observer 观察者模式定义了一种一对多的依赖关 ...