前言
筆者是一個喜歡追求盡量少的工具實現(xiàn)盡可能多功能的開發(fā)者盈蛮,在剛開始o(jì)doo開發(fā)的時候折騰過好幾套開發(fā)環(huán)境,如VSCode技矮,Visual Studio抖誉,Pycharm等;最終選擇了WSL+Pycharm專業(yè)版這個完美的組合衰倦;其優(yōu)勢在于能同時保留Windows的易用性與Linux的開發(fā)友好度袒炉,在同時使用一些Windows平臺軟件辦公的同時也能在Linux環(huán)境下開發(fā)調(diào)試,達到媲美甚至超越mac系統(tǒng)的開發(fā)體驗
WSL簡介:Windows Subsystem for Linux(簡稱WSL)是一個為在Windows 10上能夠原生運行Linux二進制可執(zhí)行文件(ELF格式)的兼容層樊零。它是由微軟與Canonical公司合作開發(fā)我磁,目標(biāo)是使純正的Ubuntu 14.04 "Trusty Tahr"映像能下載和解壓到用戶的本地計算機,并且映像內(nèi)的工具和實用工具能在此子系統(tǒng)上原生運行淹接。
方案優(yōu)點
- 速度:linux下python運行速度優(yōu)于Windows
- 性能:相比虛擬機十性,WSL與主機共享硬件資源叛溢,幾乎沒有性能損耗
-
方便:因為文件系統(tǒng)共享塑悼,在Win下的IDE或者編輯器里面修改好文件之后,不需要拷貝到linux中楷掉,xml文件修改直接升級模塊厢蒜,py文件修改直接在Pycharm中重啟odoo即可;節(jié)約同步文件的操作時間烹植,也免去忘記同步造成文件不一致造成的調(diào)試不便斑鸦。
軟件環(huán)境
- WIN10專業(yè)版
- Pycharm專業(yè)版
建議都安裝最新版本
WSL安裝
安裝前的準(zhǔn)備
-
打開系統(tǒng)的設(shè)置應(yīng)用,進入設(shè)置>更新和安全>開發(fā)者選項草雕,選擇開發(fā)人員模式
-
打開控制面板的啟用或關(guān)閉Windows功能設(shè)置巷屿,勾選適用于Linux的Windows子系統(tǒng)
安裝
WSL安裝程序內(nèi)置于WIN10的應(yīng)用商店中,需要在WIN10系統(tǒng)登錄Microsoft帳戶墩虹;
打開應(yīng)用商店搜索關(guān)鍵詞之一:bash wsl linux嘱巾,即可搜索到已經(jīng)上架應(yīng)用商店的linux子系統(tǒng)憨琳,選擇一個自己喜歡的進行安裝即可。
安裝完畢之后開始菜單應(yīng)用列表會顯示出來剛剛安裝好的Linux子系統(tǒng)
環(huán)境配置
首次進入子系統(tǒng)會顯示如圖的提示信息
系統(tǒng)初始化完成之后提示輸入用戶信息
按照提示設(shè)置用戶名與密碼即可進入系統(tǒng)
更新apt源
進入系統(tǒng)后建議第一個要做的事情就是修改apt與pip源旬昭,這樣在后面安裝軟件的時候會節(jié)約很多下載時間
輸入命令
sudo vi /etc/apt/source.list
清除現(xiàn)有文本并粘貼以下配置信息然后保存配置
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu bionic main multiverse restricted universe
deb http://cn.archive.ubuntu.com/ubuntu bionic-updates main multiverse restricted universe
deb http://cn.archive.ubuntu.com/ubuntu bionic-security main multiverse restricted universe
deb http://cn.archive.ubuntu.com/ubuntu bionic-proposed main multiverse restricted universe
運行sudo apt update
更新配置
注:此處使用的是阿里云的apt源篙螟,也可以使用其它國內(nèi)源
安裝pip包管理工具并配置更新源
sudo apt install python3-pip
創(chuàng)建配置文件
cd ~
mkdir .pip
vi .pip/pip.conf
寫入以下內(nèi)容
[global]
index-url = https://pypi.douban.com/simple
trust-host = pypi.doban.com
此處使用豆瓣pip源,也可自行換成其它國內(nèi)源
SSH安裝及端口修改
ubuntu18已經(jīng)自帶ssh server问拘,不需要另外安裝
不過由于打開開發(fā)人員選項之后遍略,WIN10也會安裝ssh并占用22端口,為了避免沖突骤坐,將ubuntu的ssh端口修改為其它端口
sudo vi /etc/ssh/sshd_config
將Port參數(shù)值修改為2222
并將PasswordAuthentication改為yes
然后打開Windows的控制臺窗口绪杏,輸入ssh linux用戶名@localhost -p2222
出現(xiàn)提示授權(quán)及輸入密碼即代表設(shè)置成功
Postgresql數(shù)據(jù)庫安裝與配置
略
這一部分參考其它odoo安裝與部署的文章即可,此處不再贅述纽绍。
Pycharm遠(yuǎn)程調(diào)試配置
映射odoo目錄
Linux子系統(tǒng)與WIN10共享文件系統(tǒng)寞忿,WIN10的文件可在子系統(tǒng)的/mnt目錄下訪問,可通過
la /mnt
查看一下目錄結(jié)構(gòu)
-
在WIN10任意目錄準(zhǔn)備好Odoo代碼顶岸,如D:\develop\odoo12\community
進入linux用戶目錄創(chuàng)建軟鏈接
cd ~
ln -s /mnt/d/develop/odoo12/community/ odoo12
此時可直接在odoo12目錄下使用odoo目錄內(nèi)的文件
嘗試運行odoo python3 odoo-bin
可以看到odoo已經(jīng)能夠在linux環(huán)境下運行起來腔彰,下一步安裝依賴的python庫之后即可正常運行
安裝odoo依賴的python庫
略
這一部分參考其它odoo安裝文檔即可
配置遠(yuǎn)程python環(huán)境
打開Pycharm的設(shè)置:File>Settings>Project: project name>Project Interpreter
打開Add Python Interpreter窗口
在左側(cè)選擇SSH Interpreter
此處能看到在最新的Pycharm版本中官方已經(jīng)支持WSL環(huán)境了,不過測試下來在這個配置下開啟了odoo的多線程之后關(guān)閉odoo進程可能會有進程清除不干凈的情況辖佣,所以暫時還使用SSH Interpreter
輸入用戶名密碼后繼續(xù)下一步直到打開下圖窗口
在Interpreter設(shè)置中選擇到linux子系統(tǒng)的Python3安裝目錄/usr/bin/python3.6
在下方的Running code on the remote server下的映射目錄中設(shè)置Remote Path為子系統(tǒng)下上文創(chuàng)建好的軟鏈接代碼目錄中
并取消勾選Automatically upload project files to the server選項(因為子系統(tǒng)與Windows共用文件霹抛,所以不需要自動同步到inux中)
設(shè)置完畢后點擊Finish等待設(shè)置更新完畢
調(diào)試配置
點擊右上角啟動選項下的Edit Configurations打開啟動配置設(shè)置
在設(shè)置窗口中作如下設(shè)置并保存
- 填寫合適的啟動選項名稱
- 在Script Path中選擇odoo-bin啟動文件
-
在Parameters中設(shè)置odoo的啟動參數(shù),通常為-c 配置文件路徑
4卷谈。 在Python Interpreter選項中選擇剛剛配置好的Python環(huán)境
點擊右上角的運行或調(diào)試圖標(biāo)杯拐,控制臺出現(xiàn)如圖所示提示即代表設(shè)置成功
大功告成!J勒帷端逼!