如何从 Docker 文件中的自定义文件通道安装 conda 包?

How to install conda package from custom file channel in Docker file?

您好,我有一个自定义的 conda 频道,例如 file://path_to_channel,我想在构建 docker 图像时从该频道安装软件包,例如:

...
RUN conda config add -channel file://...
RUN conda install mypackage
...

这里的问题是该文件路径在构建时似乎没有挂载到 docker 映像。

我的问题是,除了将整个通道复制到 docker 图像之外,还有另一种方法可以在构建时从基于自定义文件的通道安装 python 包,在 Dockerfile 中.


我的回答

下面的答案是正确的,docker现在支持运行时挂载。但我并没有走这条路,因为我们走的是更老的 docker.

为了绕过这个,我设置了一个 http 服务器来提供文件。如果您使用 node 或 python,这将非常容易。

我认为最近可以使用 RUN --mount 命令。 (它甚至可能仍处于试验阶段。)您可以找到一些示例 here

另一种方法是使用本地网络服务器提供文件。