Docker是一個開放源代碼的應用容器引擎,能夠?qū)眉捌湟蕾嚧虬梢粋€可移植的容器,然后發(fā)布到任何流行的Linux機器上,也可容易地實現(xiàn)應用程序在同一主機上的隔離和安全運行。Docker基于Go語言開發(fā),因此其核心部分也是使用Go語言實現(xiàn)的。
func main() { ctx := context.Background() cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation()) if err != nil { panic(err) } images, err := cli.ImageList(ctx, types.ImageListOptions{}) if err != nil { panic(err) } fmt.Println("List of Docker images:") for _, img := range images { fmt.Println(img.RepoTags) } }
上面的代碼使用Go語言,利用Docker提供的Go SDK獲取了當前Docker宿主機上所有的鏡像列表,并打印出每個鏡像的名稱。由此可見,使用Docker開發(fā)應用程序可以很方便地操作Docker容器和鏡像,從而實現(xiàn)應用程序的部署和管理。