docker - 将目录中的文件复制到与 Dockerfile 不同级别的 docker 容器
问题描述
我试图在 Dockerfile 中创建 docker 映像时复制目录的内容,但是在复制它时给了我错误-
复制失败:stat /var/lib/docker/tmp/docker-builder108255131/Users/user_1/media:没有这样的文件或目录
我在 Dockerfile 中有以下文件-
COPY /Users/user_1/media/. /code/project_media/
媒体目录位于单独的目录级别,然后是 Dockerfile。
解决方案
抱歉,每个 dockerfile 文档:
可以指定多个资源,但文件和目录的路径将被解释为相对于构建上下文的源
https://docs.docker.com/engine/reference/builder/#copy
我通常会有一个用于构建 docker 的脚本,并且在该脚本中会将COPY
命令所需的文件复制到“构建的上下文”的同一目录或子目录中(说同一目录的一种非常令人困惑的方式因为 dockerfile 在)
DOCKER_BUILD_DIR="./build/docker"
DOCKERFILE="./docker/Dockerfile"
MEDIA_FILES="/Users/user_1/media"
mkdir -p "${DOCKER_BUILD_DIR}/${MEDIA_FILES}"
cp -f "${DOCKERFILE}" "${DOCKER_BUILD_DIR}/"
cp -rf "${MEDIA_FILES}" "${DOCKER_BUILD_DIR}/${MEDIA_FILES}/.."
docker build "${DOCKER_BUILD_DIR}"
推荐阅读
- machine-learning - 如何使用过滤器方法创建管道,这些方法选择相关性高于值的结果(特征)?
- vulkan - 如何在 Vulkan 中创建一维纹理
- scrapy - 我输入了“scrapy version”,但它会触发或加载文件夹中的其他蜘蛛
- react-native - React Native:Pod install 导致 podfile.lock 中的版本与 package.json 不同
- r - 如何将碎石图比例设置为与主成分相同?
- python-2.7 - scipy.optimize.minimize() 约束取决于成本函数
- android - 我面临“未连接适配器;跳过布局”错误
- c# - 从 System.IO.Stream 读取数据到文本或文件
- python - gremlin io 从 url 一步
- google-kubernetes-engine - 如何增加 GKE 集群的 Service 地址范围