打造Win10+WSL开发环境(2)
⽂章⽬录
前⾔
  由于VMware装的虚拟机是挂载在机械硬盘上,启动很慢,加之最近在修改配置⽂件时搞崩了⼀直使⽤的环境(还好有备份完整的虚拟机),所以对于使⽤VMware开发越来越觉得不爽。在之前的⽂章中,我详细介绍了,但是当时在实际使⽤中遇到了⼀些⼩问题,例如vim 光标移动只能使⽤hjkl(),包括很多WSL⾃⾝的问题。
  好在微软⾮常重视WSL,后续也是推出了WSL 2,只要你的windows版本是Windows 10 build 18917 或更⾼版本就能使⽤WSL 2。
  最近在重新摸索后,出了⾮常舒服的开发环境,供⼤家参考:
OS:win10 + WSL
IDE:Pycharm
web开发,需要测试api,并且需要利⽤Linux环境
正⽂
1. WSL2更新了什么
相⽐第⼀代,新的 WSL 重新设计了架构,使⽤真正的 Linux 内核,可以在 Windows 上运⾏ ELF64 Linux ⼆进制⽂件。⽽WSL 1使⽤了转换层来使⽤系统调⽤,因此部分应⽤程序⽆法在WSL 1上运⾏。更新到WSL 2后,你就可以使⽤docker了。
过去,WSL 1 的⽂件⼀直需要放在 C 盘,WSL 2 的新架构已经没有了这个问题,现在可以将 Linux 应⽤中经常访问的⽂件放在Linux 根⽂件系统中,以享受⽂件性能优势,这样会带来更快的⽂件系统访问能⼒。
新的命令:
$ wsl --help
  可以通过以上命令去查看
windows商店⾥也提供了Ubuntu18.04等各种Linux系统版本
2. Pycharm远程开发
2.1 远程服务器的同步设置
  打开Tools - Deployment - Configuration,建⽴⼀个sftp连接,依次输⼊相关信息:
  在Mappings中配置映射:
  Local path是你在win10系统中的⼯程⽬录,Deployment path是你在WSL中的⽬录。  同时,你可以配置Tools - Start SSH session,这样你可以快速打开远程终端:
2.2 设置远程解释器
pycharm安装教程win10
  打开File - Settings - Project: name - Project Interpreter:
  你可以选择SSH Interpreter也可以直接使⽤WSL,在Python interpreter path⾥选择你的Python解释器。初始配置时,可以选择同步⽂件,这样你在本地开发过程中的更改会实时提交到WSL中。
3. 以FastAPI模块⽰例
  我将以FastAPI这个性能优异的异步web框架演⽰开发及调试。
安装fastapi、uvicorn库:
pip install fastapi
pip install uvicorn
编写main.py:
# -*- coding: utf-8 -*-
from fastapi import FastAPI
import uvicorn
app = FastAPI()
@("/")
def read_root():
return{"Hello":"World"}
@("/items/{item_id}")
def read_item(item_id:int, q:str=None):
return{"item_id": item_id,"q": q}
if __name__ =='__main__':
uvicorn.run(app='main:app', host="127.0.0.1", port=8000,reload=True, debug=True)
启动
  win10中我使⽤的terminal是cmder,打开cmder,命令⾏输⼊bash即可瞬间进⼊WSL环境。
进⼊项⽬所在⽬录,输⼊python main.py
  这样我们就相当于在本地启动了web服务。由于WSL⽹络架构的调整,我们可以直接在win10环境的浏览器中调试我们的web服务。
  后台显⽰:
  在浏览器中打开127.0.0.1:8000/docs,你会看到⼀个可以交互的api⽂档:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。