docker from指令的含义_多个FROM-含义

小编典典

什么是基本图片?

一组文件,加上EXPOSE端口ENTRYPOINT和CMD。

您可以添加文件并基于该基础图像构建新图像,Dockerfile并以FROM指令开头:后面提到的图像FROM是新图像的“基础图像”。

这是否意味着如果我neo4j/neo4j在FROM指令中声明,则在运行映像时,neo数据库将自动运行并且可在端口7474的容器中使用?

仅当您不覆盖CMD和时ENTRYPOINT。

但是图像本身就足够了:FROM neo4j/neo4j如果必须添加与neo4j的特定用途相关的文件,则可以使用neo4j。

FROM 可以在一个Dockerfile中多次出现

:有一项建议无论如何都应删除该“功能”(发行13026)

使用倍数FROM并不是一个真正的功能,而是一个错误(哦,很好,限制很严格,并且FROM在Dockerfile中很少有用例的案例)。

之前:

构建器模式涉及使用两个Docker映像-一个用于执行构建,另一个用于运送第一个构建的结果,而不会影响第一个映像中的构建链和工具。

后:

通用语法涉及FROM在Dockerfile中添加其他时间-以最后一条FROM语句为最终基础映像为准。要复制中间图像的伪像和输出,请使用COPY

--from=。

Dockerfile的第一部分:

FROM golang:1.7.3 as builder

WORKDIR /go/src/github.com/alexellis/href-counter/

RUN go get -d -v golang.org/x/net/html

COPY app.go .

RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .

相同的 (!)Dockerfile的第二部分:

FROM alpine:latest

RUN apk --no-cache add ca-certificates

WORKDIR /root/

COPY --from=builder /go/src/github.com/alexellis/href-counter/app .

CMD ["./app"]

其结果将是两个图像,一个建筑,一个只有所产生的应用程序(很多, 很多 小)

REPOSITORY TAG IMAGE ID CREATED SIZE

multi latest bcbbf69a9b59 6 minutes ago 10.3MB

golang 1.7.3 ef15416724f6 4 months ago 672MB

2020-06-17

你可能感兴趣的:(docker,from指令的含义)