1

对于我的 Eclipse Che 项目,每次加载工作区 (blegh) 时,我都必须重新安装我的 python 模块。有没有办法将我的团队需要的模块安装到全局文件夹中,这样他们每次想要加载项目时甚至都不必安装 python 模块?谢谢!

4

3 回答 3

3

或者,您可以根据 Dockerfile 配方从堆栈构建您的工作区:

  1. 首先,写下您在自定义工作区时在 Eclipse Che 终端中执行的所有安装命令

  2. 接下来,根据您当前使用的文件创建一个新的 Dockerfile

    2.1。
    从配方中找到您当前工作空间所基于的 Dockerfile (例如,对于默认 Python 堆栈,它将是这个

    2.2. 通过在最后一行(EXPOSE 8080)之前添加上一步中的安装命令来修改该文件,如下所示:
    RUN sudo -H pip install flask && sudo -H pip install pandas等...

  3. 在 Eclipse Che 中,根据您的 Dockerfile 创建一个新的自定义堆栈

    3.1。点击左侧的 Stacks(位于 Workspaces 下方),然后点击“Add Stack”</p>

    3.2. 在“从配方构建堆栈”对话框中选择 Dockerfile 选项卡并将修改后的 Dockerfile 的内容粘贴到那里

    3.3. 单击确定 => 新页面打开,您可以在其中进一步自定义堆栈

    3.4. 编辑名称和描述,然后单击 NEW-MACHINE 以根据需要设置内存大小,然后单击 SAVE(右上角)

    3.5. 再次点击 NEW-MACHINE 添加一些必要的代理:“Workspace API”、“Terminal”、“Exec”和其他您需要的语言服务器(例如“Python 语言服务器”)

    3.6 您可以通过添加环境变量或服务器等来进一步自定义您的堆栈...</p>

  4. 点击保存然后测试来测试你的堆栈

  5. 在打开的新对话框中,您可以指定要添加的一些默认项目,然后单击“测试工作区”</p>

  6. 如果工作区将成功构建,您将看到以下绿色消息“您的工作区已准备好使用”,并且堆栈将添加到堆栈中。您的新机器和终端也将在下面打开

  7. 现在关闭“Testing Stack”,进入 Workspaces 或 Dashboard 并创建一个新的 Workspace

  8. 您新创建的堆栈应该在堆栈下可见,因此您现在可以选择它并基于它构建您的工作区

于 2019-02-21T12:56:30.127 回答
2

您还可以为您的工作区声明一个卷,其中 python 模块将被持久化。

来自Che 文档

您可以通过使用用户仪表板或更新机器配置来添加卷。以下是配置文件的示例:

"volumes": {
  "myvolume": {
    "path": "/absolute/path/in/workspace"
  }
}
于 2019-02-26T06:45:53.150 回答
1

如果我正确理解您的问题,最好的方法是使用预先安装的模块构建新的 docker 镜像(基于您现在使用的镜像),并将该镜像用于工作区而不是默认镜像。

于 2019-02-21T08:48:45.243 回答