Meh*_*hdi 6 docker docker-for-windows
我有一个基本的Windows映像,想要更改应用程序bin文件夹中的程序集之一。
FROM baseImage
COPY ./files/ ./Application/bin
Run Code Online (Sandbox Code Playgroud)
但是当导航到目标路径时,我看到了两个奇怪的结果:
源文件:ABCdll
复制到目标位置后:abcdll(存在ABCdll)
源中的另一个文件:DEFdll
复制到目标位置后:DEFdll(DEFdll不存在)
对这种行为有解释吗?
however these behavior is not my big problem my problem is some mistake when my app's framework wants to register my types in dlls but when framework wants to load newly overwritten files it throws exception that it is already loaded! discovering about this problem, I confused about this Docker COPY behavior.
Additional Info:
I tired docker cp and overwrote existing file. it still copies and overwrite files in lowercase filename. when change them to true format all things goes fix.
is it something about NTFS options and out of docker boundry?
i use Windows Server 2019
这是Windows 中的限制,而不是 Docker 中的限制(请参阅: https: //github.com/docker/for-win/issues/1155)。
上面提到的问题提供了有关 Windows Subsystem for Linux (WSL) 和区分大小写的 Microsoft 开发人员博客,其中指出了以下内容:
由于 Windows 应用程序将文件系统视为不区分大小写,因此它们无法区分名称仅大小写不同的文件...Windows NT 系列操作系统(包括 Windows 10)始终能够执行区分大小写的文件系统操作。 ..但是,出于兼容性原因,有一个全局注册表项可以覆盖此行为;当设置此键时,所有文件操作都不区分大小写...从 Windows XP 开始,这已成为默认值。
基本上,使用哪个文件系统并不重要,这取决于操作系统本身。
| 归档时间: |
|
| 查看次数: |
121 次 |
| 最近记录: |