这是一个两部分问题。
1)在Windows中,文件夹是否可以共享除C驱动器之外的任何驱动器?在浏览互联网时,我发现默认情况下只有C驱动器可以安装在docker容器中。 (C盘的用户文件夹)
2)现在进入主要部分 - 我正在开发一个我使用配置文件的camel项目。在此配置文件中,我使用Servicemix密钥库文件的两个参数。以前,密钥商店位于路径 - D:\sandboxes\apache-servicemix-7.0.0.M3\apache-servicemix-7.0.0.M3\etc\keystores
。
我尝试过这条路径并导致错误 -
文件未找到
我将keystores文件夹复制到C:\Users
然后给了路径C:\Users\keystores
,但错误保持不变。
现在在运行docker run
命令时,我已经映射了我的骆驼项目所在的卷 - docker run -v //C/Users/camelproject:/app ...
那么,是否可以使用-v
选项从两个驱动器安装不同的文件夹?另外我该怎么做才能在我的项目中使用这些密钥库文件?
编辑1 -
好的,所以我做了以下事情 -
C:/Users/camelproject/src/main/resources/keystores
keyStore=C:/Users/camelproject/src/main/resources/keystores/client.ks
camelcontext.xml
中使用此文件作为 - <property name="keystore" value="${keyStore}" />
docker run -v //C/Users/camelproject:/app -v //C/Users/camelproject/src/main/resources:/app/config ...
,然后在配置文件中交替给出Windows和容器路径两者作为值,但两者都给出了相同的错误。所以基本上应该找到该文件,但错误即将来临。
那么,是否可以使用-v选项安装两个驱动器?
不可能这不可能你需要为不同的目录使用多个-v选项。
具有Windows卷安装的Docker存在一些问题,它不允许在路径中使用“ - ”选项。 (例如C:/ camel-project)
并且总是使用/斜杠而不是。
这里进行了更多相关的讨论。 https://forums.docker.com/t/volume-mounts-in-windows-does-not-work/10693/7