当前位置: 首页 > 知识库问答 >
问题:

如何从docker生成中复制结果而不运行

凌善
2023-03-14
FROM golang:1.11-alpine as builder
COPY src /go/src/project/src
RUN cd /go/src/project/src && go build -o myBin

共有1个答案

田嘉澍
2023-03-14

您不必运行容器,但必须创建容器,以便能够在之后从该容器中cp(复制)二进制文件。所需的2个命令是:

  • Docker容器创建...
  • Docker container cp$CONTAINER_NAME:/path/in/container/path/on/host

示例:

main.go:

package main

import "fmt"

func main() {
  fmt.Println("hello world")
}

DockerFile:

FROM golang:1.10-alpine3.7

WORKDIR /go/src/app
COPY . .

RUN go get -d -v ./...
RUN go install -v ./...

CMD ["app"]

build-createtemp容器-copy binary-cleanup:

docker build -t go-build-test .
docker container create --name temp go-build-test
docker container cp temp:/go/bin/app ./
docker container rm temp
~/docker_tests/go-build-test$ ls
app  Dockerfile  main.go
~/docker_tests/go-build-test$ ./app
hello world
 类似资料:
  • 问题内容: 我想基于该表的数量从表中的一行获得多个结果。 因此,我希望查询的输出为A的12倍(无论是否使用计数器)和B的138倍。我已经看到了在DB上添加计数表的解决方案,但我无法做到这一点。 问题答案: 您可以使用相关的分层查询: 或递归子查询分解子句: 因此对于测试数据: 这两个解决方案都将输出:

  • 我有一个docker映像,它有所有需要的文件,当我说docker运行时,我希望它将docker映像中的文件夹的内容复制到主机目录。之后不再需要docker并停止

  • 问题内容: Docker noob在这里… 如何在命令行中正确运行Visual Studio 2017生成的Asp.Net CORE应用程序的docker映像? 似乎无法正常工作(图像运行,但是我无法浏览至我的应用程序) 注意:我只是使用默认模板在Studio中创建了一个示例ASP.Net Core Web App,并添加了Docker支持(通过单击“添加Docker支持”复选框)。执行此操作时,

  • 问题内容: 我有一个产品实体,其中具有一个数组作为属性: 现在在我的查询生成器中,我有以下代码: 这里的问题是我不想选择所有p的属性。因此,我只想在pictures数组中获得第一个ProductPicture(在我上面的例子中,它类似于getCover()方法)。我该怎么做呢? 到目前为止,我可以通过执行以下操作来过滤掉我想要的部分属性: 因此,在上面的示例中,我对图片进行了内部连接,但是如何从此

  • 问题内容: 有没有一种方法可以(轻松)生成包含测试结果的HTML报告?除Selenium外,我目前正在使用JUnit来测试Web应用程序UI。 PS:鉴于项目结构,我不应该使用Ant :( 问题答案: 我发现上述答案很有用,但并不是真正的通用目的,它们都需要其他一些主要的构建系统,例如Ant或Maven。 我想用一个简单的命令即可生成报告,我可以从任何东西(从构建,测试或我自己)中调用它,因此我创

  • 我在一个与Internet没有连接的系统中安装了,所以要用运行映像,我必须从这个系统和另一个系统下载一个简单的映像。然后,我将此映像放在离线系统中的路径: 但当我在cmd中运行时,我会看到以下消息: 并尝试从Internet下载hello-world图像,但它没有连接到Internet所以it领域。现在我想知道我应该把我的图像放在哪里才能让Docker看到?