gpt4 book ai didi

conda - 在单一容器中将conda环境容器化

转载 作者:行者123 更新时间:2023-12-04 18:00:51 26 4
gpt4 key购买 nike

我遇到过许多实例,将conda环境容器化以实现长期可重复性确实很有帮助。由于我通常在高性能计算系统中运行,出于安​​全考虑,它们必须是奇异容器。如何才能做到这一点?

最佳答案

首先,您需要为特定的conda环境获取环境YML。

conda activate your_env
conda env export > environment.yml

这是一个示例奇点配方(与“environment.yml”位于同一目录中的名为“奇点”的文件):
Bootstrap: docker

From: continuumio/miniconda3

%files
environment.yml

%post
/opt/conda/bin/conda env create -f environment.yml

%runscript
exec /opt/conda/envs/$(head -n 1 environment.yml | cut -f 2 -d ' ')/bin/"$@"

用这个构建
sudo singularity build conda.sif Singularity

现在,您将拥有一个使用conda环境中的库的可运行容器,该库可以在安装了Singularity的任何位置运行!

例子:
singularity run conda.sif ipython

笔记:

根据您使用的奇点版本,您可能需要使用环境名称更改$(head -n 1 environment.yml | cut -f 2 -d'')。

由于您无法通过运行脚本激活环境,因此只能使用提供的运行脚本来限制安装在特定环境中的二进制文件。

关于conda - 在单一容器中将conda环境容器化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54678805/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com