问题描述
特殊环境
指的就是docker容器内部或者jenkins的Execute shell内部.
在特殊环境内正常执行conda activate 环境名
会有如下的报错
Could not find conda environment: dataupdate_env
You can list all discoverable environments with `conda info --envs`.
但是使用conda info --envs
或者conda config --show envs_dirs
能看出环境其实是存在的
解决方案
方式一:
/bin/bash;
cd /home/xxx/anaconda3/envs/环境名/bin/;
source ./activate;
方式二(重点是激活conda)
/bin/bash;
source /home/xxx/anaconda3/envs/环境名/etc/profile.d/conda.sh;
conda activate 环境名;
参考这篇博客了解到第三种方式
方式三(重点是完整的环境路径)
/bin/bash;
conda config --append envs_dirs your_path;
conda activate 环境名
参考这篇博客了解到第四种方式
方式四(重点是完整的环境路径)
/bin/bash;
conda activate /home/xxx/anaconda3/envs/环境名;
补充:
使用/bin/bash;
是针对jenkins的Execute shell,因为这个Execute shell内部默认使用的是dash而不是bash,所以需要显式调用bash