vscode+remote ssh搭建《dive into deep learning》所需环境
1.vscode+remote ssh安装
2.remote ssh连接服务器
3.服务器环境搭建
#大致思路:首先服务器中的容器与其内部的jupyter notebook先形成端口映射,之后容器与本地之间的端口进行映射,使得本地的浏览器可以对服务器上的.ipynb进行展示与编辑
#拉nvidia官方容器
#此处-p 7777:8888的意思是服务器本身的7777端口会映射到container里面的8888端口,前面的7777可以更改为别的数字,只要别和服务器自身已经使用的端口产生冲突就好,后边的8888最好别更改,因为8888是jupyter notebook的默认端口,若是这里改动了8888,就要相对应更改。
docker run -p 7777:8888 -it --gpus=all --name=d2l nvidia/cuda:11.2.0-devel-ubi7
#对容器进行初始化
yum install zip bzip2 unzip wget vim #安装必要的包
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh#安装minianaconda,以便进行后期虚拟环境的安装
bash Miniconda3-latest-Linux-x86_64.sh
bash#进入conda base环境
conda create -y -n d2l python=3.8 pip#创建项目所需环境
conda activate d2l#激活
pip install jupyter d2l torch torchvision#为环境安装所需要的包
wget https://zh-v2.d2l.ai/d2l-zh.zip#下载课件
unzip d2l-zh.zip
cd pytorch#进入对应的语言文件夹
jupyter notebook --generate-config#生成配置文件,对其中属性进行修改
vim /root/.jupyter/jupyter_notebook_config.py
#修改
c.NotebookApp.ip='*'
c.NotebookApp.password = u'密文密码'
#密文密码生成
#from notebook.auth import passwd
#passwd()
#输入自己的密码,并将产生的密文复制粘贴至对应位置
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888
jupyter notebook --allow-root#运行jupyter notebook
#终端输出日志
[I 11:22:17.503 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 11:22:17.663 NotebookApp] WARNING: The notebook server is listening on all IP addresses and not using encryption. This is not recommended.
[I 11:22:17.664 NotebookApp] Serving notebooks from local directory: /pytorch
[I 11:22:17.664 NotebookApp] Jupyter Notebook 6.4.3 is running at:
[I 11:22:17.664 NotebookApp] http://030d0d648e9c:888/#此链接即为本地访问jupyter的链接
[I 11:22:17.665 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
#在本地打开终端即cmd
C:\Users\16344>ssh -L7777:localhost:7777 yourname@ssh ip#此处即将本地电脑的7777端口与服务器7777端口映射
#之后在本地浏览器输入http://127.0.0.1:7777,输入我们之前设置的密码即可访问jupyter notebook