我有一个从我的根项目中运行 的docker文件,它运行正常 现在,我需要从本地计算机上将项目 添加到图像中,我就像跟随
ADD ../proj1 /go/src/proj1
现在我出错了
Step 7/16 : ADD ../proj1 /go/src/proj1
ADD failed: Forbidden path outside the build context: ../proj1 ()
我该如何克服?我不想将proj1
放在root project
下
docker文件上的所有其他路径都可以
FROM golang:alpine as builder
WORKDIR /go/src/rootproj
ADD . /go/src/rootproj
RUN CGO_ENABLED=0 go build -ldflags '-extldflags "-static"' -o main .
ADD ../proj1 /go/src/proj1
要构建它,我运行
docker build -t myproj .
答案 0 :(得分:1)
答案摘自here,由Sjord ...
该构建实际上发生在
/tmp/docker-12345
中,因此类似../relative-add/some-file
的相对路径是相对于/tmp/docker-12345
的。因此它将搜索/tmp/relative-add/some-file
,它也显示在错误消息中。不允许包含来自构建目录外部的文件,因此这将导致“禁止访问路径”消息。