go go 程式 啟動docker容器

2022-03-04 10:07:28 字數 2630 閱讀 5826

imagename string = "my-gin:latest" //映象名稱

containername string = "mygin-latest" //容器名稱

indexname string = "/" + containername //容器索引名稱,用於檢查該容器是否存在是使用

cmd string = "./gindocker2" //執行的cmd命令,用於啟動container中的程式

workdir string = "/go/src/gindocker2" //container工作目錄

openport nat.port = "7070" //container開放埠

hostport string = "7070" //container對映到宿主機的埠

containerdir string = "/go/src/gindocker2" //容器掛在目錄

hostdir string = "/home/youngblood/go/src/gindocker2" //容器掛在到宿主機的目錄

n int = 5 //每5s檢查乙個容器是否在執行

)func main()

checkandstartcontainer(ctx, cli)

}//建立容器

func createcontainer(ctx context.context, cli *client.client) , //docker 容器中執行的命令

workingdir: workdir, //docker容器中的工作目錄

exposedports: nat.portset{}, //docker容器對外開放的埠

},}, &container.hostconfig},

},mounts: mount.mount,

},}, nil, containername)

if err == nil else

}//啟動容器

func startcontainer(ctx context.context, containerid string, cli *client.client) error )

if err == nil else

return err

}//將容器的標準輸出輸出到控制台中

func printconsole(ctx context.context, cli *client.client, id string) )

if err != nil

io.copy(os.stdout, out)

//容器內部的執行狀態

status, err := cli.containerstats(ctx, id, true)

if err != nil

io.copy(os.stdout, status.body)

}//檢查容器是否存在並啟動容器

func checkandstartcontainer(ctx context.context, cli *client.client) else }}

}//獲取container

func getcontainer(ctx context.context, cli *client.client, all bool) types.container )

if err != nil

var conttemp types.container

//找出名為「mygin-latest」的container並將其存入conttemp中

for _, v1 := range containerlist }}

return conttemp

}//容器是否正在執行

func isruning(ctx context.context, cli *client.client) <-chan bool else }}

}(ctx, cli)

return isrun

}

Docker安裝及啟動乙個CentOS容器

192.168.1.137 docker pull centos 7 docker run itd name centos7 imageid bin bash 進入centos容器 docker exec it centos7 bin bash 沒有ifconfig ssh vim tree wge...

Docker 儲存啟動程式選擇

一般情況下,很少資料被寫入到容器層,這通常採用資料卷掛載方式完成資料寫操作。但是,部分情況下,需要向容器可寫層寫入資料,這便是儲存驅動的作用。docker支援多種 可插入體系結構 支援本地的檔案系統 的儲存驅動程式。儲存驅動控制決定著映象和容器在docker 主機上的管理和儲存方式。了解了docke...

Docker基礎入門四 操作 Docker 容器

容器是映象的乙個執行例項。新建容器,新建的容器處於停止狀態 命令docker container create 例 docker create it ubuntu latest 啟動容器 命令docker start 容器id或容器名 例 docker start 54d6 檢視容器輸出 docke...