Dockerfile 从 Windows 文件系统复制到 docker 容器
Dockerfile COPY from a Windows file system to a docker container
我有一个简单的 Dockerfile:
FROM php:7.1-apache
LABEL maintainer="rburton@agsource.com"
COPY C:/Users/rburton/code/MyAgsourceAPI /var/www
这是给我带来问题的最后一行。我正在从 Windows 结构复制到 docker 容器(我假设是 Linux)。当我构建此图像时,我得到:
...
Step 3/3 : COPY C:/Users/rburton/code/MyAgsourceAPI /var/www
COPY failed: stat /var/lib/docker/tmp/dockerbuilder720374851/C:/Users/rburton/code/MyAgsourceAPI: no such file or directory
首先,有些东西阻止识别这是一个绝对路径,如果路径前面加上 /var/lib/docker/tmp/dockerbuilder720374851
,自然就找不到文件。其次,我尝试了 /
和 \
,但结果都一样。我怀疑驱动器号也混淆了 docker。所以问题是如何将文件和文件夹(连同内容)从 Windows 文件夹复制到 docker 容器?
首先,将您的 Dockerfile
更改为:
FROM php:7.1-apache
LABEL maintainer="rburton@agsource.com"
COPY MyAgsourceAPI /var/www
然后,转到您的 code
目录:cd Users/rburton/code
.
在那个目录中,运行:
docker build -t <image_name> .
另一个可能有用的提示,我在 运行 从正确的上下文构建时看到了同样的问题,并且问题一直存在,直到我在我想从中复制的 src 文件夹中使用了所有小型大写字母。例如:
COPY MyAgsourceAPI /var/www -> COPY myagsourceapi /var/www
我有一个简单的 Dockerfile:
FROM php:7.1-apache
LABEL maintainer="rburton@agsource.com"
COPY C:/Users/rburton/code/MyAgsourceAPI /var/www
这是给我带来问题的最后一行。我正在从 Windows 结构复制到 docker 容器(我假设是 Linux)。当我构建此图像时,我得到:
...
Step 3/3 : COPY C:/Users/rburton/code/MyAgsourceAPI /var/www
COPY failed: stat /var/lib/docker/tmp/dockerbuilder720374851/C:/Users/rburton/code/MyAgsourceAPI: no such file or directory
首先,有些东西阻止识别这是一个绝对路径,如果路径前面加上 /var/lib/docker/tmp/dockerbuilder720374851
,自然就找不到文件。其次,我尝试了 /
和 \
,但结果都一样。我怀疑驱动器号也混淆了 docker。所以问题是如何将文件和文件夹(连同内容)从 Windows 文件夹复制到 docker 容器?
首先,将您的 Dockerfile
更改为:
FROM php:7.1-apache
LABEL maintainer="rburton@agsource.com"
COPY MyAgsourceAPI /var/www
然后,转到您的 code
目录:cd Users/rburton/code
.
在那个目录中,运行:
docker build -t <image_name> .
另一个可能有用的提示,我在 运行 从正确的上下文构建时看到了同样的问题,并且问题一直存在,直到我在我想从中复制的 src 文件夹中使用了所有小型大写字母。例如:
COPY MyAgsourceAPI /var/www -> COPY myagsourceapi /var/www