2017-05-30 373 views
1

比方说,我有一个git - REPO的回购,我已经链接到Docker Cloud进行自动化构建。构建需要我将整个REPO文件夹复制到容器上。如何将任何文件夹复制到Docker容器 - Dockerfile存在于该文件夹中?

有什么办法让Dockerfile目前里面的REPO可以将它的内容复制到容器中吗?我查过ADDCOPY,但是它们只在Dockerfile存在于REPO之外的一个目录的文件夹中时才起作用。

FOLDER |-> Dockerfile REPO - 工程

FOLDER |-> REPO |-> Dockerfile - 不工作

即使通配符,如命令: ADD ./* /root/似乎并没有工作。

回答

1

以下dockerfile你想要做什么,如果我理解正确的话:

FROM alpine 

RUN mkdir /test 
WORKDIR /test 

COPY ./ /test/ 

CMD ["/bin/sh"] 

用下面的输入$dir,并从$dir运行泊坞窗构建:泊坞窗图像中

Dockerfile somefile somefolder 

/test/包含:

/test # ls 
Dockerfile somefile somefolder 
+0

的'COPY ./* /测试/'命令忽略文件夹结构。它只是将所有文件和文件夹内容转储到'test'中。 – RazorCallahan24

+1

我注意到,''copy'。'不带'*'但是保留它,至少在我的测试系统(docker version 17.03.1-ce) –

+0

谢谢!有用。 – RazorCallahan24

0

这是完全可能的。正在.您的FOLDER的根(如您所示)。您需要:

docker build . -f REPO/Dockerfile -t imagename 

,做COPYADD相对于.

相关问题