nexus 清理 docker 镜像

下载配置 nexus-cli

看网上文档都用如下地址,但现在已经不能下载:

wget https://s3.eu-west-2.amazonaws.com/nexus-cli/1.0.0-beta/linux/nexus-cli
chmod +x nexus-cli

在 github 上下载:

wget https://github.com/heyonggs/nexus-cli/releases/download/0.0.3/nexus-cli-linux
mv nexus-cli-linux /usr/local/bin/nexus-cli
chmod +x /usr/local/bin/nexus-cli

查看帮助命令

[root@nexus ~]# nexus-cli --help
NAME:Nexus CLI - Manage Docker Private Registry on NexusUSAGE:nexus-cli [global options] command [command options] [arguments...]VERSION:0.0.2AUTHOR:Eugen Mayer, Karol Buchta, Mohamed Labouardy <->COMMANDS:configure  Configure Nexus Credentialsimage      Manage Docker Imageshelp, h    Shows a list of commands or help for one commandGLOBAL OPTIONS:--help, -h     show help--version, -v  print the version

配置凭证

[root@nexus ~]# nexus-cli configure
Enter Nexus Host: https://nexus.***.com
Enter Nexus Repository Name: docker-public
Enter Nexus Username: admin 
Enter Nexus Password: Removed potential trailing slash on Nexus Host URL, now: https://nexus.***.com
Configuration saved to succesfully to: /root/.nexus-cli

列出所有镜像

[root@nexus ~]# nexus-cli image ls
admin/admin
ai/chrome
ai/rockylinux-9-desktop
ai/ubuntu-desktop
......

列出特定镜像的所有 tag

[root@nexus ~]# nexus-cli image tags -name tools/nginx
Error parsing version2: "No Major.Minor.Patch elements found"
1.16
1.20.1
There are 2 images for tools/nginx

查看特定 tag 的信息

[root@nexus ~]# nexus-cli image info -name tools/nginx -tag 1.16
Image: tools/nginx:1.16
Size: 6645
Layers:sha256:54fec2fa59d0a0de9cd2dec9850b36c43de451f1fd1c0a5bf8f1cf26a61a5da4 27098254sha256:5546cfc927724eff7f5a134801904dee21064bd49912a7c4daa550175939cbce 23879166sha256:50f62e3cdaf71a6b4ba0cbe2115ce42d90cce8301cbf8220d2a99d19e0b85690 202

删除特定 tag 镜像

[root@nexus ~]# nexus-cli image delete -name tools/nginx -tag 1.16# 删除多个
nexus-cli image delete -name dockernamespace/yourimage -tag 1.16,1.20

在删除之前运行测试

nexus-cli image delete -name tools/nginx -keep 4 -dry-run

删除所有标签,但保留最近的4。注意,latest也算,被认为是“最近的”。

nexus-cli image delete -name dockernamespace/yourimage -keep 4

清理磁盘空间

创建两个Nexus Task 来清理物理空间。先运行 Purge unused docker manifests and images,再运行 Compact blob store,也可以直接手动执行清理。

如果没有这两个任务的可以直接创建

Compact blob store

Purge unused docker manifests and images

使用shell脚本每天定时清理一次

我的镜像tag格式:2024-07-01-15-04-22,大家可以根据自己的镜像tag修改脚本

#!/bin/bash# 获取所有镜像列表
images=$(nexus-cli image ls)# 遍历每个镜像
for image in $images; do# 获取镜像的tag列表tags=$(nexus-cli image tags --name "$image")# 遍历每个tagfor tag in $tags; do# 判断tag是否以 年-月-日-时 开头if [[ $tag =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}-[0-9]{2} ]]; thenecho "删除镜像: $image:$tag"nexus-cli image delete --name "$image" --tag "$tag"fidone
doneecho "删除完成."

添加执行权限

chmod +x del_nexus_docker.sh

添加定时任务,每天凌晨1点30执行一次

crontab -e30 01 * * * del_nexus_docker.sh  > /dev/null 2>&1 &

记得也要配置nexus task定时清理任务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/878277.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【DSP+FPGA】基于DSP+FPGA XC7K325T与TMS320C6678的通用信号处理平台

DSP FPGA 协同处理架构板载 1 个TMS320C6678 多核DSP处理节点板载 1 片 XC7K325T FPGA处理节点板载 1 个FMC 接口板载4路SFP光纤接口FPGA 与 DSP 之间采用高速Rapid IO互联 基于FPGA与DSP协同处理架构的通用高性能实时信号处理平台&#xff0c;该平台采用1片TI的KeyStone系列多…

H5手机端调起支付宝app支付

1.调起APP页面如下 步骤 1.让后端对接一下以下文档&#xff08;手机网站支付通过alipays协议唤起支付宝APP&#xff09; https://opendocs.alipay.com/open/203/107091?pathHash45006f4f&refapi 2.后端接口会返回一个form提交表单 html&#xff1a;在页面中定义一个d…

Python从入门到进阶教程文章分享汇总~持续更新

目录 一、Python语言基础1.1 基础语法1.2 练习1.2.1 选择题1.2.2 编程题 二、web方向2.1 flask2.2 django2.3 fastapi 三、爬虫方向3.1 爬虫基础3.2 Scrapy框架3.3 反爬3.5 爬虫架构3.6 案例 四、数据分析和ai4.1 数据分析4.2 AI 五、Python常用模块&#xff0c;内置函数与方法…

2024年程序员金九银十面试宝典持续更新中.....

大家好&#xff0c;我是一位老程序员&#xff0c;很久没有更新了&#xff0c;今年大家都很不容易&#xff0c;这里有一份多年来整理的一份Java&#xff0c;大模型&#xff0c;项目管理&#xff0c;Mac软件等各类学习资料及面试题&#xff0c;无论你刚入行的程序员&#xff0c;还…

安全运维--Linux常用命令

运维工程师之Linux常用命令 Linux是一个强大的操作系统&#xff0c;它提供了许多常用的命令行工具&#xff0c;可以帮助我们用于管理文件、目录、进程、网络和系统配置等。以下是一些常用的Linux命令&#xff1a; 一、获得命令帮助&#xff1a; 1、查看Shell内部命令pwd的帮…

C++_CH17_枚举

C_CH17_枚举 1.1 定义 枚举(ENUM),是enumeration的缩写。是为了让一组数值集合成为一种类型。 1.2一个例子 #include <iostream>enum Example {A,B,C;//说明你想让哪些数成为组合&#xff0c;默认第一个为0&#xff0c;之后每一个加1 };int a 0; int b 1; int c 2…

Linux的远程登录教程(超详细)

我们在进行远程登录时要用的一种协议叫SSH&#xff0c;那什么叫SSH呢&#xff1f; SSH&#xff08;Secure Shell&#xff09;是一种网络协议&#xff0c;用于在不安全的网络中提供安全的远程登录和其他网络服务。它通过加密技术确保数据在传输过程中的机密性和完整性&#xff…

实训第三十二天(学习playbook-roles,脚本创建数据库和表,mycat读写分离)

1、roles&#xff08;角色&#xff09;介绍 roles(⻆⾊): 就是通过分别将variables, tasks及handlers等放置于单独 的⽬录中,并可以便捷地调⽤它们的⼀种机制。 假设我们要写⼀个playbook来安装管理lamp环境&#xff0c;那么这个 playbook就会写很⻓。所以我们希望把这个很⼤的…

vite-plugin-svg-icons 用法

vite-plugin-svg-icons 是一个 Vite 插件&#xff0c;用于将本地 SVG 文件转换为可直接在 Vue 组件中使用的图标。这个插件能够自动扫描指定目录下的 SVG 文件&#xff0c;并将其注册为 Vue 组件&#xff0c;从而简化了在 Vue 项目中使用 SVG 图标的过程。 1. 安装插件 首先&…

C++ 图形框架 Duilib

Duilib是一个开源的DirectUI界面库&#xff0c;遵循BSD协议&#xff0c;可以免费用于商业项目。它具有以下特点&#xff1a; 简约易扩展的设计&#xff1a;Duilib遵循简洁、清晰的设计理念&#xff0c;使得用户界面更加直观、易于使用。同时&#xff0c;它也提供了丰富的扩展接…

从被动应对到主动防御:开发团队技术故障处理能力的全面升级,未雨绸缪,制胜未来!

开发团队如何应对突发的技术故障和危机&#xff1f; 网易云音乐 时间&#xff1a;2024年8月19日下午 问题&#xff1a; 服务器故障&#xff1a;网易云音乐网页端出现“502 Bad Gateway”报错&#xff0c;App也无法正常使用。影响&#xff1a;用户无法正常登录和使用app、we…

MAC +win10 笔记本, OBS 桌面音频不起作用 问题 总结

现象: MAC+WIN10笔记本,音频是好好的,可以听,但是OBS使用的时候,桌面音频条,保持静止,录制的视频,也没有系统声音。 问题排查 1、通常的OBS无法捕获音频解决方法 1)、 驱动问题,更新到最新驱动 2)、声音参数配置问题 3)、右侧小喇叭,音量合成器中, 4)、设…

Vue.js 样式绑定

Vue.js 样式绑定 Vue.js 是一种流行的前端框架&#xff0c;它提供了一种简洁而强大的方式来绑定样式到元素上。样式绑定允许开发者根据组件的状态动态地改变元素的样式。在 Vue 中&#xff0c;样式绑定可以通过多种方式实现&#xff0c;包括类绑定、内联样式绑定和计算属性样式…

qt父类和子类转换的安全性问题

在 Qt 中&#xff0c;父类和子类之间的转换遵循 C 的类型转换规则。以下是关于父类和子类转换安全性的详细说明&#xff1a; 1. 向上转型&#xff08;Upcasting&#xff09; 定义&#xff1a;将子类对象转换为父类对象。安全性&#xff1a;这是安全的&#xff0c;因为子类对象…

【Word与WPS如何冻结首行首列及窗口】

1.Word如何冻结首行首列及窗口 microsoft word 中锁定表头是一项实用的功能&#xff0c;可让您在滚动文档时保持表头可见。这在处理大型文档或包含大量数据的表格时非常有用。php小编柚子将为您详细介绍 word 锁定表头位置的方法&#xff0c;帮助您轻松掌握这项实用技巧。 1.…

2024国内十大API接口服务平台

在2024年&#xff0c;国内有许多优秀的API接口服务平台&#xff0c;这些平台为开发者和企业提供了丰富的API资源和便捷的服务。以下是国内十大API接口服务平台的简要介绍&#xff08;排名不分先后&#xff09;&#xff1a; 挖数据&#xff1a; 挖数据是一家专注于大数据服务的…

【STM32】驱动LCD

没买LCD屏&#xff0c;没有上机实践&#xff0c;只是学习了理论。 大部分图片来源&#xff1a;正点原子HAL库课程 专栏目录&#xff1a;记录自己的嵌入式学习之路-CSDN博客 目录 1 屏幕接口 2 屏幕驱动的基本步骤 3 8080时序的各信号线 4 8080的读和写 5 屏…

<Rust>egui学习之小部件(八):如何在窗口中添加滑动条slider部件?

前言 本专栏是关于Rust的GUI库egui的部件讲解及应用实例分析&#xff0c;主要讲解egui的源代码、部件属性、如何应用。 环境配置 系统&#xff1a;windows 平台&#xff1a;visual studio code 语言&#xff1a;rust 库&#xff1a;egui、eframe 概述 本文是本专栏的第八篇博…

使用redis模拟cookie-session,例子:实现验证码功能

目录 在前后端分离架构中不建议使用cookie-session机制实现端状态识别 所以我们可以使用redis来模拟session-cookie机制 下面我们通过实现验证码的功能来举例 第一步&#xff1a;了解前端要我们返回的数据变量名字&#xff0c;变量类型 1.封装code,data成一个result类&…

Linux网络配置实例,主机名和hosts映射

目录 linux网络配置实例 第一种方法&#xff08;自动获取&#xff09; 第二种方法&#xff08;指定ip&#xff09; 重启网络服务或者重启系统生效 设置主机名和hosts映射 设置主机名 设置hosts映射 主机名解析过程分析&#xff08;Hosts&#xff0c;DNS&#xff09; …