Python 2.7 在奇点配方中激活康达环境
我是singularity新手,我想在singularity配方中激活一个conda环境(Python 2.7 在奇点配方中激活康达环境,python-2.7,conda,singularity-container,Python 2.7,Conda,Singularity Container,我是singularity新手,我想在singularity配方中激活一个conda环境(myenv),以便在其中安装一个包(mypkg)。我读过一些相关的帖子,但是答案并没有解决我的问题,尽管问题非常相似(,)。你能帮我找到我错过的吗 在我的例子中,当我执行容器时,myenv会自动激活,但在容器构建过程中,我没有成功激活它以安装mypkg。我没有任何错误消息,但软件包安装在基本环境中,而不是myenv Bootstrap: docker From: ubuntu:18.04 %files
myenv
),以便在其中安装一个包(mypkg
)。我读过一些相关的帖子,但是答案并没有解决我的问题,尽管问题非常相似(,)。你能帮我找到我错过的吗
在我的例子中,当我执行容器时,myenv
会自动激活,但在容器构建过程中,我没有成功激活它以安装mypkg
。我没有任何错误消息,但软件包安装在基本环境中,而不是myenv
Bootstrap: docker
From: ubuntu:18.04
%files
myenv.yml
%environment
export LC_ALL=C
export LC_NUMERIC=en_GB.UTF-8
export PATH="/opt/miniconda/bin:$PATH"
export PATH="/opt/miniconda/envs/$(head -1 myenv.yml | cut -d' ' -f2)/bin:$PATH"
%runscript
exec "$@"
%post
# miniconda2: get miniconda2 version 4.5.1
wget https://repo.continuum.io/miniconda/Miniconda2-4.7.12.1-Linux-x86_64.sh -O miniconda.sh
#install conda
bash miniconda.sh -b -p /opt/miniconda
export PATH="/opt/miniconda/bin:$PATH"
#install conda env.yml file
echo ". /opt/miniconda/etc/profile.d/conda.sh" >> $SINGULARITY_ENVIRONMENT
echo "conda activate $(head -1 myenv.yml | cut -d' ' -f2)" >> $SINGULARITY_ENVIRONMENT
/opt/miniconda/bin/conda env create -f myenv.yml
# Activate conda env, clone and install mypkg
. /opt/miniconda/bin/activate myenv &&
git clone https://github.com/mypkg.git &&
cd mypkg&&
python setup.py install
而不是
/opt/miniconda/bin/activate myenv
尝试使用:
. /opt/conda/etc/profile.d/conda.sh
conda activate myenv
更好地支持直接使用这些函数