Docker环境启用Anaconda并指定环境env
默认的Docker环境无法执行source命令,因此无法通过source activate 环境名进入Anaconda环境。集群的任务脚本为startdocker -u "--ipc=host --shm-size 32G"-P /ghome/用户名 -D /gdata/用户名 -c "sh /ghome/用户名/bash脚本" bit:5000/deepo
·
默认的Docker环境无法执行source命令,因此无法通过
source activate 环境名
进入Anaconda环境。
集群的任务脚本为
startdocker -u "--ipc=host --shm-size 32G" -P /ghome/用户名 -D /gdata/用户名 -c "sh /ghome/用户名/bash脚本" bit:5000/deepo
把python python脚本封装在sh脚本内,便于在sh脚本内搞定Anaconda路径及环境配置。
bash脚本内容为
#!/bin/bash
export PATH="/gdata/anaconda3/bin:$PATH"
which python
/gdata/anaconda3/envs/环境名/bin/python /ghome/脚本.py
第一句将用户的Anaconda添加到系统的路径中,从而覆盖docker的python解释器。通过第二句which python可以看出Python解释器已经改变了。
由于无法通过source activate进入环境,通过绝对路径指定Python解释器即可达到相同效果。
至此,Docker环境启用Anaconda并指定环境env已解决。
当然,重新制作docker镜像是另一个解决方案,本文更适合解决Python package的使用问题。
更多推荐
已为社区贡献1条内容
所有评论(0)