好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > 定時清理docker私服鏡像的方法

定時清理docker私服鏡像的方法

熱門標簽:400電話號碼辦理多少錢 百度地圖標注公司位置要多少錢 濮陽好的聯通400電話申請 山東企業外呼系統公司 地圖標注黃河的位置 地圖標注如何改成微信號 靈圖uu電子寵物店地圖標注 承德地圖標注公司 虛假地圖標注

使用CI構建docker鏡像進行發布極大促進了大家的版本發布效率,于是鏡像倉庫也就急速膨脹。為了緩解磁盤壓力,我們需要設置一些清理策略。

對于不同docker鏡像的清理策略應該是不同的。比如,默認保留最近5個版本的鏡像,對于工具類的image保留全部,對于業務類的image保留一個月之類的。

簡單保留5個image的方式如下:

下載 https://github.com/mlabouardy/nexus-cli , 使用cli來執行刪除。

下載

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

配置

./nexus-cli configure

最終會在本目錄下創建.credentials 文件

# Nexus Credentials
nexus_host = "http://nexus.demo.com"
nexus_username = "admin"
nexus_password = "adminpass"
nexus_repository = "your-docker-private-repo"

注意,host填寫的nexus的host和端口,不是docker對應的repo的端口。

nexus_repository就是docker對應的repo。

查看鏡像

./nexus-cli image ls

保留最近5個

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

綜合腳本

clean.sh

image_file=image.txt
CLI_HOME=/data/nexus3
KEEP_VERSION_NUM=5

$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

定時任務

crontab -e

0 2 * * * sh /data/nexus3/clean.sh

創建nexus task

思考

前面提到,對應不同的image,應該選擇不同的保留策略的。當然不能直接保留5個。比如某個工具鏡像,雖然開發很勤快,但應用的也許還是老版本。對于業務鏡像,一天發布了n次,添加了n個鏡像。怎么維護這些版本呢?

一個粗略的想法是,規范image名稱,比如tools-, biz-之類添加前綴。

分不同的repo。 對于工具類,單獨一個repo,業務自己一個repo,對不同的repo執行不同的保留策略。

總結

以上所述是小編給大家介紹的定時清理docker私服鏡像的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

標簽:上海 樂山 德宏 福州 淮安 鷹潭 泰安 安康

巨人網絡通訊聲明:本文標題《定時清理docker私服鏡像的方法》,本文關鍵詞  定時,清理,docker,私服,鏡像,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《定時清理docker私服鏡像的方法》相關的同類信息!
  • 本頁收集關于定時清理docker私服鏡像的方法的相關信息資訊供網民參考!
  • 推薦文章