前言

之前OnDemand发生了一些更新,导致需要额外配置一些环境变量,不然的话juypter notebook的kernel没有办法读取到conda。

正文

1. OnDemand初入门

先来说一下OnDemand上面如何操作吧,首先在你有了account之后,你可以登陆进OnDemand了的控制面板(host)了,然后就可以做以下的操作:

  1. 去到自己的data文件夹:cd $VSC_DATA
  2. 下载miniconda:wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
  3. 安装miniconda3:bash Miniconda3-latest-Linux-x86_64.sh -b -p miniconda3
  4. 激活miniconda3:source miniconda3/bin/activate
  5. 安装miniconda3的自定义环境:conda create -n "<env_name>" python=<python_version> ipython
  6. 激活miniconda3的自定义环境:conda activate <env_path>
  7. 安装ipykernel:conda install ipykernel
  8. <这里需要看下面的环境变量配置>
  9. 在激活的环境里面把环境放到kernel上面:python -m ipykernel install --user --env PYTHONPATH "" --name <ENV_NAME> --display-name <KERNEL_NAME>
  10. 结束的时候deactivate:conda deactivate

这上面都是需要的,但是下面有新的环境变量配置的工作要做。

2. 环境变量配置(必要)

为了配置环境变量,我们需要做以下的工作

  1. 添加 XDG_DATA_HOME.bashrc里面,如果没有的话,就要创建,以下的代码能直接实现:
echo 'export XDG_DATA_HOME=${VSC_DATA}/.local/share' >> ${VSC_HOME}/.bashrc && source ${VSC_HOME}/.bashrc
  1. source .bashrc代码
source ~/.bashrc
  1. 删除所有的(以前的,如果有的话)kernel文件夹 在${VSC_HOME}/.local/share/jupyter/kernels
rm -rf <YOUR_KERNEL_FOLDER>
  1. 激活conda 环境,并且重新创建kernel(新的kernel folder会自动的声称在${XDG_DATA_HOME}/jupyter/kernels
<这里回到1的第9步就好>

以下是我的原文解释原因

I think the problem happens to they add a new feature "Toolchain and Python versions" for users, and trying to make things more convenient; however, for some reasons, they changed the default kernel folders in jupyter notebook, and making life more difficult. xD

总结

OnDemand 初入门与必要的环境变量配置。

参考

[1] 自己
[2] VSC

Q.E.D.


立志做一个有趣的碳水化合物