如何在 docker remote api 中创建容器?(go-dockerclient)

Sai*_*ifi 1 go docker dockerfile docker-registry docker-compose

我正在使用go-dockerclient库,我想使用CreateContainer go-dockerclient 方法创建容器,但是我应该在哪里传递我创建此函数的 docker 图像 ID

func CreateContainer(w http.ResponseWriter, r *http.Request){

    client,err:=docker.NewTLSClient(Endpoint,Cert,Key,Ca)
    if err!=nil{
        panic(err)
    }
    container,er:=client.CreateContainer(docker.CreateContainerOptions{Name:"cont"})
    if er!=nil{
        panic(err)
    }

 }
Run Code Online (Sandbox Code Playgroud)

例如,如果我有一个给定的图像 ID,我应该在哪里添加它?

drl*_*out 5

您可以在 Config 结构中指定图像:

 container, err := client.CreateContainer(docker.CreateContainerOptions{
    Name: "container name",
    Config: &docker.Config{
      Image: "ubuntu:latest",
    },
 })
Run Code Online (Sandbox Code Playgroud)

  • 您可以使用 `docker.StartContainer(container.ID, &docker.HostConfig{})` 启动容器 (3认同)