docker镜像自动更新及删除


最近常玩docker,更新docker latest镜像时,如果镜像较多,更新删除感觉有点麻烦,写代码如下:

#!/usr/bin/env -S v run

import os

fn split_lines(content string) [][]string {
	mut lines := [][]string{}
	for line in content.split('\n') {
		trimed_line := line.trim_space()
		if trimed_line.len > 0 {
			lines << trimed_line.fields()
		}
	}
	return lines
}

fn main() {
	println('dockerimagesupdate v0.0.1 by Zhuo Nengwen at 2021-12-07')
	images := os.execute_or_exit('sudo docker images')
	if images.exit_code == 0 {
		fields := split_lines(images.output)
		for item in fields {
			match item[1] {
				'<none>' {
					id := item[2]
					cmd := 'sudo docker image rm $id -f'
					println('\n$cmd')
					os.system(cmd)
				}
				'latest' {
					name := item[0]
					cmd := 'sudo docker pull $name'
					println('\n$cmd')
					os.system(cmd)
				}
				else {}
			}
		}
	}
}

代码需要用v编译,v的安装请按照官网vlang.io说明进行。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM