如何利用WSL(WSL 1)部署开发环境优雅的进行开发

OS:这次我是真的烦了。

先谈需求,

由于所学专业要求放弃Windows几乎是非常不现实的选项

(多数工业软件如博图是要跑在Win上的,还有CAD),

但在Windows机器上部署CUDA和深度学习框架

需要依赖于VS(至少是Build组件),

虚拟机即开即用但是太占地方(不够轻量化),

而Win对Docker的支持像*一样。

痛定思痛决定tear the system,这次尽量规划的合理点。

在此之前我手上有三套方案供我选择,

  • 方案一,Windows(主机,装CUDA,Python3.7,gcc,vs-buildtool)+Vargent(VBox)

  • 方案二,Manjaro-Xfce(主机,装CUDA,Python3.7)+VBox(Windows 10)

  • 方案三,Windows(舍弃CUDA,用Python+gcc)+Vargent(VBox)

都多多少少有些问题。

Windows做宿主的最大问题是一旦挂掉,
重新配置会花掉大量的精力和时间,

并且鉴于文件系统的复杂性(不同于*nix的直观性),
维护管理文件的时候也很想死。

Linux的话就很容易自己作炸(Manjaro还好了其实)。

那天逛少数派发现了一篇文章在 Windows 上用 WSL 开发的操作体验指北,突然来了灵感。

要不…给WSL一个机会?

0x00开始迁移

我是那种挺极端系统玩家,所以主系统在备份了密钥之后,

20190909012642.png

我就直接把C盘抹了……

再您妈的见(^-^)

OS:事实证明不要像我这么冲动,我的WA2三周目存档啊……

至于开WSL支持啥的这都是废话了,系统我选的Ubuntu 18.04 LTS,非长期不敢用啊。

在经过简单的安装和配置之后,
20190909013820.png

这样肯定是没法看的,那就来配置一番。

0x01搬迁环境

由于早年血一般的教训使我养成了备份脚本/配置文件的好习惯,

所以重配环境没费多大力气,多数情况可以参考我的Ubuntu 18.04 部署手记

所以说同学们啊,不要在不该省力气的地方偷工减料,
会遭报应的。

但是有一点,tmux+vim我还没折腾,因为我发觉之前的对于我来讲有点复杂,所以我准备回头搞个简化版再更新。

折腾完差不多这样。

20190909014719.png

注意:如果你需要用windows下查看linux的文件,可以用一下wsl-open

1
2
3
4
5
6
7
8
9
10
11
12
# 安装
sudo npm install -g wsl-open

# 打开文件
wsl-open ../Downloads/THP.pdf
wsl-open /home/other/README.txt

# 打开目录(仅限Windows下的目录['/mnt/c/'等])
wsl-open /mnt/c/Users/4u6u5/Music

# 打开链接
wsl-open https://mijisou.com

0x02 VSCode登场

原先我不愿意搬到VSCode下就是因为配置起来太麻烦,

但最近微软发布了Remote-WSL插件(估计是为了WSL2),

配置效率成倍提升,大大方便我的配置流程。

我常用的语言是C/C++和Python,js用的不多。

先安装Python3.7+深度学习那一堆:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# 安装依赖

sudo apt install -y make build-essential libssl-dev libffi-dev python3-dev
# 安装Python3.7

sudo apt install python3.7
# 安装 pip

sudo apt install python3-pip
# 升级 pip

sudo python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
# 修改pip

vim /usr/bin/pip3

from pip._internal import main
-> from pip._internal import main
# 修改pip源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

# 安装框架

## Pytorch(V1.2.0)
sudo pip3 install torch==1.2.0+cpu torchvision==0.4.0+cpu -f https://download.pytorch.org/whl/torch_stable.html

## tensorflow(V2.0rc)
sudo pip3 install tensorflow==2.0.0-beta0 tensorboard

## jupyter notebook
sudo pip3 install jupyter

## 配notebook密码
jupyter-notebook password

安装成功截图如下

20190909021939.png

在要打开的目录中输入code .在WSL里启动主机的VSCode,此时Remote-WSL启动,

要求你安装pylint和autopep8,安装即可。

C++


先咕一下,回头补齐~