私服nexus作为docker仓库用法

一、创建docker仓库

操作步骤

推送仓库

docker login ip:9021 -u $username -p $password
docker push ip:9021/$project/$module:tag

二、清理

下载nexus-cli

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

配置

nexus-cli同级目录执行./nexus-cli configure,然后依次输入:

  • 仓库地址(http://host:8081,注意这里是UI访问端口,不是repo的端口)
  • 镜像仓库名称
  • 用户名
  • 密码
    最终会在本目录下创建.credentials 文件
# Nexus Credentials
nexus_host = "http://nexus.demo.com"
nexus_username = "admin"
nexus_password = "adminpass"
nexus_repository = "your-docker-private-repo"

查看镜像

./nexus-cli image ls

保留最近5个

./nexus-cli image delete -name mlabouardy/nginx -keep 5

综合脚本

创建脚本clean.sh,配置好对应的cli的目录,和需要清除的镜像列表文件

image_file=image.txt
CLI_HOME=/opt/docker-clear
KEEP_VERSION_NUM=10

$CLI_HOME/nexus-cli image ls > $image_file
sed -i '$d' $image_file


cat $image_file | while read line
do
    echo "清理$line"
    $CLI_HOME/nexus-cli image delete -name $line -keep $KEEP_VERSION_NUM
done

定时任务

每天2点执行

crontab -e

0 2 * * * sh /opt/docker-clear/clean.sh

{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script}
o minute: 区间为 0 – 59
o hour: 区间为0 – 23
o day-of-month: 区间为0 – 31
o month: 区间为1 – 12. 1 是1月. 12是12月.
o Day-of-week: 区间为0 – 7. 周日可以是0或7.

创建nexus task

这里的清除只是打了标签,并没有实际的释放磁盘,需要在仓库后面创建一个定时清理的任务

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值