如何使用 Docker 引擎 SDK 和 Golang 運行 docker 安裝卷

PHPz
發布: 2024-02-09 15:24:08
轉載
817 人瀏覽過

如何使用 Docker 引擎 SDK 和 Golang 运行 docker 安装卷

php小編西瓜今天將為大家介紹如何使用Docker引擎SDK和Golang來運行docker安裝卷。 Docker是一種受歡迎的容器化平台,而Docker引擎SDK則是與Docker引擎互動的API庫。 Golang是一種強大的程式語言,與Docker引擎SDK結合使用可以實現更靈活的容器管理。本文將詳細介紹如何使用Docker引擎SDK和Golang來建立、管理和運行docker安裝卷,讓您更能利用Docker進行應用程式開發和部署。讓我們開始吧!

問題內容

我正在查看與使用 Golang 運行 Docker 相關的 docker 引擎 SDK 文件 (https://docs.docker.com/engine/api/sdk/) 我想運行一個容器(有詳細記錄),但我找不到如何在運行容器時掛載磁碟區。

我的想法是使用 Docker SDK 運行等效命令:docker 運行 -v $PWD:/tmp myimage# 但不執行 Golang os exec 函式庫。

這可能嗎?

解決方法

範例部分包含您需要的大部分內容:

https://docs.docker.com/引擎/api/sdk/examples/#run-a-container

#重要的是要記住docker run ...兩者兼而有之

  1. 建立一個容器
  2. 啟動一個容器

docker run -vdocker run --mount type=bind,source="$(pwd)"/target,target=/app的簡寫

resp, err := cli.containercreate(ctx, &container.config{ image: "alpine", cmd: []string{"echo", "hello world",}, }, &container.hostconfig{ mounts: []mount.mount{ { type: mount.typebind, source: "/local/dir", target: "/app", }, }, }, nil, "", )
登入後複製

如果您只想要一個檔案

resp, err := cli.ContainerCreate(ctx, &container.Config{ Image: "alpine", Cmd: []string{"echo", "hello world",}, }, &container.HostConfig{ Binds: []string{ "/local/dir/file.txt:/app/file.txt", }, }, nil, "", )
登入後複製

相關:

以上是如何使用 Docker 引擎 SDK 和 Golang 運行 docker 安裝卷的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!