自建的maven私服(或者叫私仓)nexus在使用过程中,因很多服务不断迭代更新上传jar包至nexus中,底层存放在一个叫Blob Stores的存储中,最近发现该存储已增大至好几百G,有必要清理一下,腾出空间。
1、使用 nexus-cli 清理
本站下载 nexus-cli-v1.1.0-linux-amd64
# 下载
wget https://s3.eu-west-2.amazonaws.com/nexus-cli/1.0.0-beta/linux/nexus-cli
# 配置
cp nexus-cli /usr/local/bin/
chmod +x /usr/local/bin/nexus-cli
# 配置
nexus-cli configure
# 仓库地址
Enter Nexus Host: http://127.0.0.1:8081
# 仓库名称
Enter Nexus Repository Name: docker-repo
# 账号
Enter Nexus Username: admin
# 密码
Enter Nexus Password: admin123
# 查出所有镜像
nexus-cli image ls
# 查看某一镜像的所有的 tag
nexus-cli image tags -name imagename
# 查看某一镜像详细信息
nexus-cli image info -name imagename -tag tagname
# 删除指定 tag 的指定镜像
nexus-cli image delete -name imagename -tag tagname
# 仅保留 n 项 tag,其余全部删除
nexus-cli image delete -name imagename -keep n
# -imagename 镜像名
# -keep n 表示保留几个tag
2、清理磁盘空间
注意:在删除多个目标后,你会发现,实际物理磁盘并没有释放出来,是因为在后台只是被标记为deletion,就好比你用delete语句删除mysql中的条目时,磁盘空间不会释放出来一样,因此,还需要第二步操作。
这里会创建一个定时任务,任务类型为Compact Blobstore,然后填写定时任务详情,如下:
评论区