赞
踩
提示:安装docker将使用WSL2。参照了[Windows安装Docker 容器教程]与[Windows安装docker]进行技术梳理。(https://zhuanlan.zhihu.com/p/678736848)(https://blog.csdn.net/hjjshua/article/details/130520266)
1、windows环境配置
通过控制面板\程序和功能\启用或关闭windows功能,启动适用于Linux的Windows子系统和虚拟机平台。
重启电脑。
设置WSL默认为WSL 2
wsl --set-default-version 2
2、安装docker
从docker官网下载安装包Docker官网下载地址
下载完成后,获得Docker Desktop Installer.exe安装包。双击运行Docker Desktop Installer.exe,一路点击下一步即可,别额外操作。(最后一定要勾上WSL 2 代替Hyper-V,默认也是勾上的。)
启动 Docker Desktop,验证 Docker 是否正常运行。
在cmd或者PowerShell下执行命令验证 Docker 是否正常运行:
docker -v
docker compose version
docker run hello-world
docker images
可以看到列表中已经存在hello-world的镜像。
提示:参照[docker创建Ubuntu,Ubuntu创建桌面环境,本机使用VNC连接](https://blog.csdn.net/laoxue123456/article/details/131259352?spm=1001.2101.3001.6650.8&utm_medium=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-8-131259352-blog-107593330.235%5Ev43%5Epc_blog_bottom_relevance_base7&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-8-131259352-blog-107593330.235%5Ev43%5Epc_blog_bottom_relevance_base7&utm_relevant_index=13)
打开powershell输入以下命令创建容器
docker run -tid --gpus all -p 3316:22 -p 5900:5900 -p 5901:5901 -p 8889:8888 --name container_name -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all --privileged=true ubuntu:20.04
意思是创建一个可以全整使用windows的GPU的ubuntu 20.04的容器,且给了三个转换接口(即在windows的3316对应Ubuntu的22、windows的8889对应ubuntu的8888,用处就在于配置ssh和jupyterlab的时候有大用)
创建成功后可以通过docker桌面看到容器和镜像。
也可以通过docker ps来查看运行中的容器。
docker ps
使用nvidia-smi命令验证时候使用到了宿主机的GPU资源。
nvidia-smi
在终端输入命令,进入ubuntu控制台。
docker exec -it container_name /bin/bash
1、在控制台中,更换ubuntu的下载源为阿里源,方便提升下载速度。
sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list
sed -i s@/security.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list
apt-get clean
apt-get update
2、安装配置ssh的必要工具
apt update
apt install vim
apt install openssh-client
apt install openssh-server
apt install net-tools
注:在运行apt install openssh-server的时候,可能会让选择时区,这里输入6选择Asia,再输入70选择Shanghai即可。
3、编辑sshd_config文件
vim /etc/ssh/sshd_config
进入sshd_config文件,按a进入编辑状态,在末尾添加PermitRootLogin yes,然后按Esc退出编辑状态,输入:wq退出文件。
5、给root用户设置密码
passwd root
注:输入的密码不会显示出来,输入密码后按回车即可。
6、启动并查看ssh
service ssh start
ps -e|grep ssh
7、设置ssh开机启动
vim /root/.bashrc
# 在.bashrc末尾添加如下代码,方法同编辑sshd_config文件。
service ssh start
提示:参照[新装Ubuntu系统基本环境安装配置(conda)](https://blog.csdn.net/Eyesleft_being/article/details/120138519?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171263848316800186516264%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=171263848316800186516264&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-120138519-null-null.142%5Ev100%5Epc_search_result_base2&utm_term=ubuntu%E9%85%8D%E7%BD%AEconda%E7%8E%AF%E5%A2%83&spm=1018.2226.3001.4187)
在之前创建ubuntu容器的时候已经配置好了显卡驱动(即利用windows宿主机的显卡驱动)
这里直接安装cuda和cudnn
1、安装cuda
通过cuda版本显卡驱动版本对应关系cuda版本显卡驱动版本对应关系可以参考自身显卡驱动对应的cuda版本,从cuda下载地址找到并进行下载安装。(注:我的显卡是4090,为了和pytorch对应,选择的是12.1版本)
wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run
sh cuda_12.1.1_530.30.02_linux.run
进入安装界面后,选continue,然后输入accept,回车。在选项卡中,直接移动到选择Install即可(低版本选项卡中可能会有Driver一项,我们已有显卡驱动,将该项取消掉)。
若出现Failed to verify gcc version. See log at /var/log/cuda-installer.log for details.请重新安装gcc和g++,再运行安装程序。
apt install gcc g++
sh cuda_12.1.1_530.30.02_linux.run
命令跑完后,打开/usr/local应该是有cuda-12.1的文件夹。
2、配置cuda环境
配置cuda的系统路径,首先打开家目录下的.bashrc文件
vim ~/.bashrc
在文件的末尾添加以下内容
# added cuda path
export PATH=/usr/local/cuda-12.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-12.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
注意把cuda-12.1改成自己的版本,操作方法同编辑sshd_config文件。
保存并关闭文件,完成配置。更新环境:
source ~/.bashrc
#输入nvcc -V命令查看是否成功安装
nvcc -V
3、安装cudnn
从cuDnn下载地址上下载对应版本的cudnn
wget https://developer.download.nvidia.com/compute/cudnn/9.0.0/local_installers/cudnn-local-repo-ubuntu2004-9.0.0_1.0-1_amd64.deb
dpkg -i cudnn-local-repo-ubuntu2004-9.0.0_1.0-1_amd64.deb
cp /var/cudnn-local-repo-ubuntu2004-9.0.0/cudnn-*-keyring.gpg /usr/share/keyrings/
apt-get update
#cuda11
apt-get -y install cudnn-cuda-11
#cuda12
apt-get -y install cudnn-cuda-12
#其他版本
apt-get -y install cudnn
根据自己的cuda版本情况来安装,执行完上述命令后,cuDNN 就安装好了。
通过nvcc –V命令来检查,显示Cuda compilation tools, release 12.1, V12.1.105则表示成功。
4、安装conda
这里是安装miniconda。
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
安装过程中开始按回车,一直按住回车直到输入yes。遇到让更改路径可以不更改,直接回车。然后遇到问题输入yes,回车。
然后把anaconda添加到用户环境变量中(对应conda的bin文件位置)。vim ~/.bashrc打开配置文件,在末尾加上下面这句话。
vim ~/.bashrc
#在文件末尾添加环境变量,并保存退出,方法同编辑sshd_config文件
export PATH="/root/miniconda3/bin:$PATH"
退出后更新一下,并使用conda -V检查时候安装成功。
source ~/.bashrc
conda -V
5、安装pytorch
从pytorch官网pytorch官网找到对应版本的pytorch
注:这也是我为什么装cuda12.1的原因,可以适配pytorch。
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
至此,深度学习环境配置完毕。其余的python包根据需求自行下载。
1、升级pip,通过pip安装jupyter lab
python -m pip install --upgrade pip
pip install jupyterlab
2、安装好jupyerlab后,生成配置文件
jupyter lab --generate-config
生成配置文件的/root/.jupyter/jupyter_lab_config.py
3、配置jupyter server 的密码
jupyter server password
# 接着输入密码
生成配置文件/root/.jupyter/jupyter_server_config.json
4、编辑配置文件的/root/.jupyter/jupyter_lab_config.py
mkdir /home/lab #创建一个专门放jupyter代码的根目录
vim /root/.jupyter/jupyter_lab_config.py
在文件内添加:
# 允许通过任意绑定服务器的ip访问
c.NotebookApp.allow_root = True
c.ServerApp.ip = '0.0.0.0'
# 用于访问的端口
c.ServerApp.port = 8888 #注意这里与前面开出的容器端口要一致
c.ServerApp.allow_origin = '*'
# 不自动打开浏览器
c.ExtensionApp.open_browser = False
#允许远程访问
c.ServerApp.token = ''
c.ServerApp.allow_remote_access = True
c.AerverApp.root_dir = '/home/lab'
保存并退出,打开jupyter lab
jupyter lab
可以看到已经开始运行了,ubuntu上的访问接口为:http://127.0.0.1:8888/lab。之前我们设置了8889:8888,那么在windows的访问接口则为8889。
在windows浏览器中输入http://127.0.0.1:8889/lab可访问到jupyterlab中进行愉快代码编写。(遇到让输入密码则输入配置jupyter server 时设置的密码)
到这里整个基本的环境配置就完成了,就可以为所欲为的进行本领展示了。希望大家都能轻松愉快的完成配置。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。