使用 拉取图像时ImagePull(),终端中有大量标准输出显示拉取进度,即;
{"status":"Downloading","progressDetail":{"current":6433248,"total":7964517},"progress":"[========================================\u003e ] 6.433MB/7.965MB","id":"ae5cee1a3f12"}
func PullImage(imageName string) bool {
ctx := context.Background()
cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
if err != nil {
log.Error(err)
return false
}
//TODO: Need to disable Stdout!!
log.Info("\t\tPulling image " + imageName)
out, err := cli.ImagePull(ctx, imageName, types.ImagePullOptions{})
if err != nil {
log.Error(err)
return false
}
defer out.Close()
io.Copy(os.Stdout, out)
log.Info("Pulled image " + imageName + " into host")
return true
}
我搜索了文档,但没有找到禁用 StdOut 或更改详细程度的方法。
我不太了解这io.Copy(os.Stdout, out)条线,但据我所知,禁用它会导致没有图像被拉出。
我们如何隐藏输出ImagePull()?
吃鸡游戏
相关分类