Python Jupyter环境配置
远程访问服务器还是用jupyter看起来比较舒服,记录一下以Win11作为服务器,Mac作为客户端的访问。
- 服务器上安装python和conda(miniconda即可);
- 在base环境中安装jupyter notebook
pip install jupyter; - 新建虚拟环境env_name[1];
- 在虚拟环境中安装ipykernel
conda install ipykernel(亲测pip install ipykernel也可以); - 虚拟环境写入jupyter kernel
python -m ipykernel install --user --name env_name --display-name env_name,不要的时候记得删除C:\Users\user_name\AppData\Roaming\jupyter\kernels\env_name; - 配置远程访问[2];
- 安装需要的包,如果是通用的(如torch[3])的话可以直接安装在base,亲测其他虚拟环境可调用;
- 客户端访问,我这边客户端是Mac直接写一个command文件,双击直接运行,客户端不要忘记改成禁止休眠:
#! /usr/bin/expect
set timeout 5
spawn ssh -o StrictHostKeyChecking=no user_name@192.168.XX.XX "jupyter notebook D:/PythonCode --no-browser --port=8889"
expect "*password:" {send "XXX\n";exp_continue}
spawn ssh -N -f -L localhost:8890:localhost:8889 user_name@192.168.XX.XX
expect "*password:" {send "XXX\n";exp_continue}
spawn open -a Safari http://localhost:8890/
interact
- jupyter插件[4]。
-
conda最好换源:
conda config --remove-key channels移除现有源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/添加新源
conda create -n env_name python==3.12创建名为env_name的环境
conda进行python虚拟环境管理的常用命令
conda env list查看所有环境
conda activate env_name激活环境env_name
conda list查看当前环境下包(不包括base中的)
conda deactivate env_name退出环境env_name(等效于conda activate base进入base环境)
conda env remove -n env_name删除环境(慎用)
conda install package_name安装某个包,只在当前环境下有效
conda install package_name删除某个包,只删除当前环境下的包 ↩ -
在服务器cmd中输入
jupyter notebook --generate-config生成C:\Users\username\.jupyter\jupyter_notebook_config.py,打开该文件并修改如下
c.NotebookApp.notebook_dir = 'D:\\PythonCode'默认打开jupyter后的路径,注意是双反斜杠
c.NotebookApp.open_browser = False
c.NotebookApp.password = u''在python中 from notebook.auth import passwd 然后passwd()输入密码得到加密后的密码填入''之间
c.NotebookApp.port = 8889服务器端口号
c.NotebookApp.ip = '*'任何客户端ip可访问
c.NotebookApp.allow_remote_access = True可远程访问 ↩ -
torch注意配合cuda版本
nvidia-smi,我这边用pip安装很快conda没速度。cuda安装不说了网上很多。 ↩ -
可以参考插件整理,我自己安装的如下图。
↩image.png
