无法在golang中构建docker镜像

时间:2017-11-09 15:49:20

标签: docker go

我正在容器内执行此测试用例,因为golang:1.7在我的主机上不可用。 我创建了一个容器并以bash模式启动它,并按照链接https://tdeheurles.github.io/acting-on-docker-from-inside-docker/

中提到的步骤进行操作

这是我面临的问题,当我尝试构建一个泊坞窗图像时,它始终显示以下错误

  

来自守护程序的错误响应:找不到指定的Dockerfile:   Dockerfile

这是我的Dockerfile内容

FROM golang:1.9  

我创建这个Dockerfile只是为了测试,以确保我能够使用golang程序创建图像。

这是我的goLang逻辑

dockerFile := "Dockerfile"
imageName := "test_build_image"

ctx := context.Background()

cli, err := client.NewEnvClient()

buildOptions := types.ImageBuildOptions{ Tags: []string{imageName}, Dockerfile: dockerFile }

buildResponse, err := cli.ImageBuild(ctx,dockerBuildContext, buildOptions)

编辑:1

奇怪的是这段代码正在运作

cli, _ := client.NewEnvClient()
    dockerBuildContext, err := os.Open("anil_test.tar")
    defer dockerBuildContext.Close()

    buildOptions := types.ImageBuildOptions{Tags: []string{"my_image"}, Dockerfile: "Dockerfile"}

    buildResponse, err := cli.ImageBuild(context.Background(), dockerBuildContext, buildOptions)

当我通过将我的Dockerfile作为参数传递给os.Open(“Dockerfile”)来使用相同的代码时,它无效。这是否意味着我们只需要传递Docker的.tar文件?

0 个答案:

没有答案