中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在WSL2下搭建開發環境

發布時間:2021-07-06 18:04:43 來源:億速云 閱讀:815 作者:chen 欄目:編程語言

這篇文章主要介紹“如何在WSL2下搭建開發環境”,在日常操作中,相信很多人在如何在WSL2下搭建開發環境問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何在WSL2下搭建開發環境”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

  • 1. 什么是WSL?

  • 2. 如何安裝?

  • 3.如何連接WSL進行遠程開發?

  • 4. 關于文件路徑的對應

  • 5. 文件夾的綠光把我的眼睛閃瞎了怎么辦?

  • 6. cmd太丑了,影響心情怎么辦?

  • 7. WSL2 如何安裝Docker

  • 8. 其它人如何訪問我的WSL2上的服務

  • 9. 如何設置開機自啟服務

  • 10. 固定WSL2 IP

  • 參考

1. 什么是WSL?

微軟開發的windows下的Linux子系統。對Ubuntu20的兼容效果非常好,可以滿足日常開發需求。 目前有兩個版本:

  • WSL1:與主機共用一個網卡

  • WSL2:使用單獨的虛擬網卡,與主機組成局域網。WSL2更適合開發,也是本文的主題

2. 如何安裝?

官方安裝文檔傳送門

懶得看快速安裝步驟:

  1. 鼠標右鍵Windows圖標,使用管理員打開Powershell

如何在WSL2下搭建開發環境

  1. 執行以下命令

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  1. 下載安裝Linux內核更新包

下載地址: https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

這一步如果提示安裝失敗,重啟電腦再安裝即可

  1. Powershell執行一下命令,設置默認版版本WSL2

wsl --set-default-version 2

如果此處找不到wsl命令,先重啟,然后重新安裝內核更新包

  1. 在微軟應用商店安裝Ubuntu

訪問不了商店,或者下載過慢的。可下載 離線安裝包 進行安裝

安裝完成之后,直接通過開始菜單打開Ubuntu,或使用cmd輸入Ubuntu,等待安裝完成,配置用戶名和密碼即可。

小知識:如何下載微軟商店應用離線安裝包?

進入網址:https://www.microsoft.com/zh-cn/windows/

搜索需要安裝的應用,比如Ubuntu. 然后點擊搜索結果,進入應用獲取界面。此時不要點擊獲取,否則還是會進入應用上帶你進行下載。將頁面鏈接復制下來,刪除'#'號或'?'號后面的部分。例如Ubuntu的獲取界面鏈接為

https://www.microsoft.com/zh-cn/p/ubuntu/9nblggh5msv6#activetab=pivot:overviewtab

則保留

https://www.microsoft.com/zh-cn/p/ubuntu/9nblggh5msv6

然后進入網址 https://store.rg-adguard.net/ ,填寫并搜索剛才保留的鏈接,點擊時間戳最新的搜索結果即可下載

如何在WSL2下搭建開發環境

  1. 最后,為了讓WSL可以訪問主機,需要新增一條防火墻策略。在PowerShell中執行

New-NetFirewallRule -DisplayName "WSL" -Direction Inbound  -InterfaceAlias "vEthernet (WSL)"  -Action Allow

3.如何連接WSL進行遠程開發?

  1. VSCode 中直接安裝Remote-WSL插件,即可開發

  2. 其他IDE如何連接? 其他IDE有的可以原生支持WSL2,有的不支持。不一定原生支持WSL2,可以通過開啟ssh服務,實現遠程開發。網上教程很多,大家直接參考就行,此處不再贅述。例如: https://cloud.tencent.com/developer/article/1538305

注意:部分IDE支持WSL1,其原理與WSL2相差甚遠,無法兼容。還是需要使用SSH

SSH安裝過程中,如果apt下載過慢,可以先更換為國內源,然后執行apt update再下載。例如中科大源,可參考 https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/

WSL2 systemctl 不可用,無法直接開機啟動SSH服務,請參考本文第9節設置

4. 關于文件路徑的對應

window盤符在WSL中的路徑為/mnt

$ pwd
/mnt
$ ls
c  d  e

可使用以下命令創建軟連接到家目錄,方便使用 ln -s /mnt/盤符/路徑 目標路徑

5. 文件夾的綠光把我的眼睛閃瞎了怎么辦?

由于Windows的文件權限控制方式與Linux不一樣。WSL中查看Windows文件,權限位默認為777,shell中會給文件夾加上惡心的綠光。解決方案:

cd    #保證在 /home/用戶名  目錄下
dircolors -p > .dircolors    #如果已經存在 .dircolors文件,則會出錯,應把 .dircolors 文件先移除,執行 rm .dircolors
vim .dircolors    #編輯 .dircolors 文件

找到 OTHER_WRITABLE ,大概在 60 行左右,把該行的 42 改為 49 即可

6. cmd太丑了,影響心情怎么辦?

應用商店安裝Windows Terminal。同樣地也可以下載離線安裝包 進行安裝

也可以開啟ssh服務后,使用xshell等遠程終端工具連接

7. WSL2 如何安裝Docker

Ubuntu發行版本可以直接安裝docker,但注意不能配置cgroup為systemd。建議直接安裝Windows版Docker,可以原生支持WSL2,兼容性更好。 具體參考: https://docs.docker.com/docker-for-windows/wsl/ 。此處不再贅述

8. 其它人如何訪問我的WSL2上的服務

在Windows宿主機上安裝nginx進行反向代理 下載地址: https://nginx.org/en/download.html 下載完成后,直接解壓,修改conf/nginx.conf文件,配置代理

http{
    ...
    server {
        listen       80;    #監聽端口
        server_name  localhost;
        
        location / {
            # 關于如何使用固定ip,請查看本文第10節
            # 可以測試一下自己的版本支不支持
            proxy_pass http://wsl的ip:你的服務端口
            
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            proxy_http_version 1.1;
            proxy_buffering off;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
        }
    }
    ...
}

修改完成后,啟動nginx.exe即可。然后使用Windows IP + nginx設置的監聽端口即可讓其他人也訪問你的WSL2中的服務了

9. 如何設置開機自啟服務

參考 https://zhuanlan.zhihu.com/p/47733615 以SSH為例,先在WSL中創建/修改/etc/init.wsl

sudo cat <<EOF | tee -a /etc/init.wsl
#!/bin/bash
/etc/init.d/ssh $1
EOF
chmod a+x /etc/init.wsl

然后在Windows中設置自啟動。按Win+R,輸入:shell:startup,回車后會打開文件管理器并進入啟動腳本路徑。創建啟動腳本ubuntu.vbs,內容如下

Set ws = CreateObject("Wscript.Shell")
ws.run "wsl -d Ubuntu -u root /etc/init.wsl start", vbhide

保存退出,下次重啟即可生效

10. 固定WSL2 IP

WSL2 IP默認是不固定的。有兩種方式可以曲線救國。

一種是在設置開機任務,開機時設置WSL IP。但由于宿主Windows的IP也會改變,所以強行設置IP可能會遇到IP沖突的情況。

另外一種是使用連接WSL2是配置hosts。設置開機任務,開機時修改Windows的hosts文件,將指定的域名指向WSL2的IP。實際使用中直接使用域名連接WSL2即可。

這里使用第二個方案。GitHub上已經有人開發了相關工具,我們直接使用即可

Github傳送門: https://github.com/shayne/go-wsl2-host

詳細使用步驟:

先下載wsl2host.exe,移動到合適的安裝目錄(服務會引用改文件,請合理放置)

使用管理員權限打開cmd或powershell,cd到wsl2host.exe所在目錄,執行

./wsl2host.exe install

然后輸入Windows的登陸用戶名和密碼(注意不是PIN)。沒有報錯即完成安裝。 打開服務檢查是否生效 如何在WSL2下搭建開發環境

如何在WSL2下搭建開發環境

如果沒有啟動,右鍵點擊啟動即可。如果出現報錯"登陸失敗.....",說明配置有誤。右鍵-屬性-登陸,重新配置以下用戶名密碼,保存后重新啟動即可。

如何在WSL2下搭建開發環境

打開C:\Windows\System32\drivers\etc\hosts文件查看,會發現新增的hosts規則

192.168.100.183 ubuntu.wsl    # managed by wsl2-host

cmd中 ping ubuntu.wsl 即可看到效果

參考

  • https://docs.microsoft.com/zh-cn/windows/wsl/install-win10

  • https://cloud.tencent.com/developer/article/1538305

  • https://docs.docker.com/docker-for-windows/wsl/

  • https://zhuanlan.zhihu.com/p/47733615

到此,關于“如何在WSL2下搭建開發環境”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

竹北市| 且末县| 东海县| 洞口县| 丹棱县| 古丈县| 北碚区| 红安县| 台前县| 阿拉善盟| 廊坊市| 广宁县| 南汇区| 陇川县| 宁化县| 凭祥市| 静海县| 抚州市| 凤翔县| 宜兰县| 洪泽县| 梅州市| 玉田县| 长子县| 会昌县| 长乐市| 宁陵县| 泰安市| 商水县| 平和县| 海伦市| 昌平区| 南郑县| 清新县| 大埔县| 甘孜县| 百色市| 永丰县| 中宁县| 谷城县| 正定县|