我可以't copy the file from the host into the container using the Dockerfile, because i' m只需not allowed to,如Docker文档中所述:
路径必须位于构建的上下文中;你不能COPY ../something / something,因为docker build的第一步是将上下文目录(和子目录)发送到docker守护进程 .
我也无法从jenkins工作中执行此操作,因为作业命令在docker容器的shell中运行,无法与父级(jenkins主机)通信 .
This jenkins plugin本可以节省生命,但正如第一部分所述:由于未解决的安全漏洞,此插件的分发已暂停 .
1 回答
这是我使用Dockerfile将文件从主机复制到docker镜像的方法
我有一个名为 tomcat 的文件夹
在里面,我有
tar file
和Dockerfile
命令只是为了理解而完成整个过程
Sample Docker file:
Docker commands:
Now you are inside docker container
如您所见,我能够将
apache-tomcat-7.0.84.tar.gz
从主机复制到Docker容器 .请注意您共享的Docker文档第一行
因此,只要在构建期间可以访问路径,您就可以复制 .
Another way of doing this would be using volume
注意 -v 参数
你告诉Docker将
Current_Directory/somefolder
挂载到Docker的路径/home/test
一旦容器启动并运行,您只需将任何文件复制到
$(pwd)/somefolder
,它将被复制到容器内/home/test