file - Docker 文件没有这样的文件或目录 - 绝对路径问题
问题描述
写作是因为我对 Docker File 进程有一个奇怪的问题
问题与 Docker 文件上下文有关。据我了解,我可以从 Dockerfiles 访问的目录上下文是一个目录向上和一个目录向下
示例目录树
A - B - C - D - E
如果我的 docketfile 在 C 上,我可以访问 BD 但我无法访问 AE
我有问题,因为这是我的情况
我的 Docker 文件在 C 上,我需要从 BDE 访问文件,我真的不知道该怎么做
我需要访问它,因为我的目标 jar 在 E 上并且我需要在这个文件中添加一个以使用 Spring Dev Tools 实现 docket 热部署
像在 Docker 上的东西
ADD .\D\E\jar.file jar.file ENtrypoint xxx 公开 xxx
而且我仍然需要访问 B 来获取其他一些文件。
清楚吗?
对不起,我知道很奇怪
解决方案
如果您可以做某事,这并不意味着它是正确的,或者如果不推荐某事,则意味着可能会出现问题。
如果您阅读了一般指南和建议,它会建议将事物保留在上下文中,那么为什么需要从不同的驱动器复制事物?顺便说一句,在 Linux 中这是不可能的,因为 docker 需要从上下文中复制,所以最好将你的 jar 文件保存在 dockerfile 上下文中。
了解构建上下文
当您发出 docker build 命令时,当前工作目录称为构建上下文。默认情况下,假定 Dockerfile 位于此处,但您可以使用文件标志 (-f) 指定不同的位置。无论 Dockerfile 实际位于何处,当前目录中文件和目录的所有递归内容都会作为构建上下文发送到 Docker 守护进程。
推荐阅读
- android - Android Jetpack 导航深层链接在 AndroidManifest 上生成效果不佳
- django - DRF:如何根据字段权限限制嵌套序列化程序中的字段?
- javascript - 如何在 Facebook 应用内浏览器中接收邮件?
- java - 无法在 Wildfly 上部署轴 Web 服务
- c++ - 使用 std::shared_ptr 接收变量作为参考的优缺点是什么?
- c# - 如何对列表进行排序
在c#中 - html-email - 电子邮件中的 Schema.org 标记
- python-3.x - Pyppeteer 在 20 秒后因 pyppeteer.errors.NetworkError 崩溃
- gpu - 使用 slurm 在可用 GPU 上分发 MPI 线程程序
- node.js - 使用 NodeJS 读取数据时,DynamoDB StringSet 会自动解组