首頁 > 後端開發 > Golang > 主體

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

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

如何使用 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 -v docker 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學習者快速成長!