该文章提供了一种清理nexus3中存储的docker镜像的一种新思路
查看docker repo
比如你的docker repo名字叫做test-repo,然后在nexus3首页的seatch下面找到docker,点进去随便查看一个已经上传的镜像
记住上面的
Name
选项,之后要用到
设定清理策略(clean policies)
在nexus3 设置中找到
Cleanup Policies
点击
Create Cleanup Policy
创建一个新的清理策略
注意到
Asset Name Matcher
区域,这里可以填写RE表达式,过滤的是第一步中得到的Name选项。
比如你想要过滤所有以
clean
结尾的
rabbitmq
镜像,你可以这么编写你的表达式:
v2/rabbitmq/manifests/.*-clean
如果你想要清理所有的镜像,而不只是
rabbitmq
,你懂得
v2/.*/manifests/.*-clean
当然你也可以根据情况选择是否设置镜像过期时间一起配合使用(注意这里的三个条件是逻辑与的关系)
配置完成后,不要忘了点击下方进行预览,以免失误删除了其他镜像。
配置完成后点击
Save
按钮保存。
应用清理策略
同样是在设置页面点击
Repositories
,点击要配置的 docker repo
在
Cleanup
区域找到 刚刚创建的策略,并将其加入到右侧
Applied
一栏,然后点击下方
Save
按钮保存。
至此完成策略的应用
立即执行清理任务
在应用清理策略后,nexus3默认会创建一个自动清理的任务,该任务在每天凌晨一点钟自动执行。如果立即手动执行,可以在设置页面找到
Tasks
面板,找到刚才说的自动清理任务。
找到名为
Cleanup service
的默认任务
在任务面板点击
Run
即可立即执行清理计划。