作为二进制 tarball 的便携式 conda 环境
portable conda environment as a binary tarball
我正在尝试构建一个可移植的 conda
环境。
所以我们可以打包并稍后将其分发到另一台服务器或许多服务器。
我们搭建环境的地方和后面要部署的地方是两个不同的地方。
我注意到 conda create
和 conda install
都将环境位置硬编码到 environment_path\bin
下所有已安装脚本的 shebang 中 - 有没有办法覆盖它?
我们必须使用部署位置,而不是在 shebang bin/
脚本中为该环境构建位置。
还创建了https://github.com/conda/conda/issues/7861
免责声明:我知道使用导出的 yaml 文件重建环境的选项,但这不是我们在这里看到的。我们希望将 conda 环境作为二进制 tarball 可再分发/可移植 - 部署位置已知,但它与环境构建位置不同。
包保存在 <conda_root>/pkgs
。您可以将这些文件(以及 anaconda 安装程序脚本)复制到您的部署服务器,安装 anaconda,然后 运行 conda install <path_to_pkgs>/*.bz2
.
我刚刚发现 conda-pack
似乎直接解决了这个问题
https://github.com/conda/conda-pack
conda-pack
is a command line tool for creating relocatable conda
environments. This is useful for deploying code in a consistent
environment, potentially in a location where python/conda isn't
already installed.
文档:https://conda.github.io/conda-pack/
用例:
- 将应用程序与其部署环境捆绑在一起
- 打包 conda 环境以便在部署时与 Apache Spark 一起使用
纱线(有关更多信息,请参见此处)。
- 打包用于在 Apache YARN 上部署的 conda 环境。一种方法是使用 Skein。
- 归档处于正常运行状态的环境。
更新:我们的其他一些 PySpark 应用程序在所有 Hadoop 节点(NFS 安装)上可用的位置上使用 conda
环境,并且运行良好对于一些没有大量依赖项的 conda 环境。
我正在尝试构建一个可移植的 conda
环境。
所以我们可以打包并稍后将其分发到另一台服务器或许多服务器。
我们搭建环境的地方和后面要部署的地方是两个不同的地方。
我注意到 conda create
和 conda install
都将环境位置硬编码到 environment_path\bin
下所有已安装脚本的 shebang 中 - 有没有办法覆盖它?
我们必须使用部署位置,而不是在 shebang bin/
脚本中为该环境构建位置。
还创建了https://github.com/conda/conda/issues/7861
免责声明:我知道使用导出的 yaml 文件重建环境的选项,但这不是我们在这里看到的。我们希望将 conda 环境作为二进制 tarball 可再分发/可移植 - 部署位置已知,但它与环境构建位置不同。
包保存在 <conda_root>/pkgs
。您可以将这些文件(以及 anaconda 安装程序脚本)复制到您的部署服务器,安装 anaconda,然后 运行 conda install <path_to_pkgs>/*.bz2
.
我刚刚发现 conda-pack
似乎直接解决了这个问题
https://github.com/conda/conda-pack
conda-pack
is a command line tool for creating relocatable conda environments. This is useful for deploying code in a consistent environment, potentially in a location where python/conda isn't already installed.
文档:https://conda.github.io/conda-pack/
用例:
- 将应用程序与其部署环境捆绑在一起
- 打包 conda 环境以便在部署时与 Apache Spark 一起使用 纱线(有关更多信息,请参见此处)。
- 打包用于在 Apache YARN 上部署的 conda 环境。一种方法是使用 Skein。
- 归档处于正常运行状态的环境。
更新:我们的其他一些 PySpark 应用程序在所有 Hadoop 节点(NFS 安装)上可用的位置上使用 conda
环境,并且运行良好对于一些没有大量依赖项的 conda 环境。