如何使用CHE_EXTRA_VOLUME_MOUNT?

How to use CHE_EXTRA_VOLUME_MOUNT?

用例

  1. 我希望在 che 中编辑的代码是从私有 SVN 存储库下载的,并使用私有 nexus 存储库用于 maven 依赖项。因此,我需要使用来自 "C:\Users\.m2" 的自定义 settings.xml。
  2. 最好也使用本地 maven 存储库,因此没有使用创建添加 settings.xml 的自定义 dockerfile 的方法。

设置

我创建了一个用户环境变量 "CHE_EXTRA_VOLUME_MOUNT",值为“~/.m2:/home/user/.m2”。 我可以从 "Docker Quickstart Terminal".

中看到环境变量 环境
  1. OS: Windows 7
  2. Docker 版本:1.12.6,内部版本 78d1802
  3. Docker 图片:eclipse/che-server:5.0.0

问题

在任何工作区中都看不到挂载路径“/home/user/.m2”。

有人可以帮我解决这个用例吗?

看来是eclipse che的一个bug。您可以在 https://github.com/eclipse/che/issues

创建问题

我看到了几个问题。首先,在 che.env 文件中,您应该修改 CHE_WORKSPACE_VOLUMECHE_EXTRA_VOLUME_MOUNT 是适用于 4.x 版本的旧名称。

其次,您使用的挂载路径。如果在 Windows 7 上,您在挂载路径上提供的值可能无法正常工作。这是因为您在该系统上使用 Boot2Docker,因此 VirtualBox 限制了可以安装到作为 %userprofile%.

的子文件夹存在的那些

所以: 1、首先确保c:\Users\.m2是这个子文件夹的一部分,然后: 2. 在 che.env:

中使用你的 .m2 文件夹的绝对路径挂载

CHE_WORKSPACE_VOLUME=/C/Users/<user_name>/.m2:/home/user/.m2 如果您在批处理 shell.

上使用卷安装,这种用于卷安装的古怪路径命名限制了 Docker 客户端如何理解卷安装

Che 的支持网站上发布了一个匹配的答案 - https://github.com/eclipse/che/issues/3888