文章每周持續(xù)更新邓尤,原創(chuàng)不易,「三連」讓更多人看到是對我最大的肯定贴谎」可以微信搜索公眾號「 后端技術學堂 」第一時間閱讀(一般比博客早更新一到兩篇)
今天和大家分享遠程開發(fā)工具,分享一下我平常是如何用 VS Code 進行遠程開發(fā)工作的擅这,以及一步步教你搭建遠程開發(fā)環(huán)境澈魄,擁有比德芙還絲滑的遠程開發(fā)體驗。
我們廠里為了最大程度提高工程師生產力仲翎,各種研發(fā)配套工具非常的齊全痹扇,對開發(fā)人員每人都有一臺云主機,而且是個人主機哦溯香,申請就有的那種鲫构,有了云開發(fā)主機在家里或者在公司都可以隨便折騰,加班也更方便了(好像哪里有點不對)玫坛。
傳統(tǒng)的遠程開發(fā)
大家都知道我是從事后臺服務器開發(fā)工作的结笨,主力語言是C/C++。我們的服務端程序一般都是跑在 Linux
服務器上面湿镀,傳統(tǒng)的開發(fā)流程是在 window 或 Mac 的 IDE 環(huán)境編寫代碼炕吸,然后用 ftp
或 sync
同步代碼到開發(fā)機上編譯,程序或服務最終發(fā)布到測試或生產環(huán)境運行肠骆。
就我來說,以前是這么干的:在本地 Windows 和 Linux 云開發(fā)機之間開啟一個同步程序塞耕,本地編輯代碼蚀腿,實時后臺同步到 Linux 云開發(fā)機,然后用 xshell
登錄開發(fā)機編譯、調試莉钙,這個過程有點不夠優(yōu)雅廓脆,現(xiàn)在有更香的解決方案。
更香的遠程開發(fā)
介紹下VS Code
這是一款開源編輯器磁玉,卻不止是編輯器停忿。
Visual Studio Code(簡稱VS Code)是一個由微軟開發(fā),同時支持Windows 蚊伞、 Linux和macOS等操作系統(tǒng)且開放源代碼的代碼編輯器[4]席赂,它支持測試,并內置了Git 版本控制功能时迫,同時也具有開發(fā)環(huán)境功能颅停,例如代碼補全(類似于 IntelliSense)、代碼片段和代碼重構等掠拳。該編輯器支持用戶個性化配置癞揉,例如改變主題顏色、鍵盤快捷方式等各種屬性和參數(shù)溺欧,同時還在編輯器中內置了擴展程序管理的功能 - 引用維基百科
我最喜歡的是它的插件能力喊熟,幾乎想要啥功能都能找到插件支持,應該不用我安利你們都會喜歡的姐刁。
在 2019 年的 Stack Overflow 組織的開發(fā)者調研中芥牌,VS Code被認為是最受開發(fā)者歡迎的開發(fā)環(huán)境,據(jù)調查87317名受訪者中有 50.7% 的受訪者聲稱正在使用VS Code龙填。
說了這么多胳泉,反正要表達的就是VS Code很厲害就是了。
重點來了岩遗,今天的主角功能是下面這個遠程開發(fā)擴展插件扇商。
微軟在 PyCon 2019 大會上發(fā)布了VS Code Remote ,從 1.35.0 版本正式提供可以在本地編輯遠程開發(fā)環(huán)境的文件的功能宿礁,所以首先確保你的VS Code版本是在這個之上的才能體驗到案铺。
VS Code遠程開發(fā)的工作原理,大致是這樣的:
下面講講如何配置梆靖,我的Local OS是 Win10 , Remote OS 是 Linux云主機控汉。
遠程開發(fā)配置
配置SSH環(huán)境變量
遠程開發(fā)本地 VS Code 用 SSH 協(xié)議與遠程服務端通信,所以要先配置SSH環(huán)境變量返吻,由于Git自帶SSH客戶端程序
如果你還沒裝Git的話姑子,這里要先安裝 Git,所以配置 Git 的 bin目錄到環(huán)境變量的 PATH 變量下测僵,這樣VS Code連接的時候就能找到它了街佑。
安裝遠程開發(fā)插件
要能連上遠程主機谢翎,首先我們需要下載VS Code遠程開發(fā)插件,VS Code其實是提供了一個遠程開發(fā)插件包沐旨,包括:
- Remote - SSH - 通過使用 SSH 鏈接虛擬或者實體Linux主機森逮。
- Remote - Containers – 連接 Docker 開發(fā)容器。
- Remote - WSL - 連接 Windows Subsystem for Linux (Linux子系統(tǒng))磁携。
打開軟件的擴展界面褒侧,搜索 Remote
開頭的插件,也能看到這三個的不同遠程開發(fā)插件谊迄,我們這里連接的是云主機闷供,選擇安裝 Remote - SSH 插件安裝即可。
配置遠程連接
- 首先點側邊欄的「遠程資源管理器」之后點擊「設置按鈕」鳞上,進入遠程機器配置界面这吻。
- 修改 ssh 配置文件,用于登錄遠程機器篙议,各項含義在圖中有說明唾糯。
- 點擊連接,登錄遠程服務器鬼贱,需要輸入幾次遠程服務器的密碼(后面會教你怎么免密登錄)移怯,輸入確認即可。第一次連接會做VS Code Server的初始化工作比較慢这难,耐心等待舟误。
- 登錄成功,即可像操作本地環(huán)境一樣姻乓,在VS Code客戶端操作遠程云主機上的文件嵌溢。注意,下圖中的「打開文件夾」已經是遠端機器上的目錄結構了蹋岩。
- 可以給遠程VS Code 安裝插件赖草,安裝的插件是在云服務器的VS Code上,對本機的VS Code沒有影響剪个,插件在遠端提供功能秧骑,比如代碼審查、自動補齊等等扣囊,而這所有的一切就像在本地操作一樣乎折,對文件的更改也是直接操作的云主機上的文件,絲滑連接侵歇。
- 代碼編輯與遠程終端調試骂澄。打開文件編輯的是云服務器的文件,同時可以打開云服務終端惕虑,直接在終端操作編譯或者查看云服務器信息坟冲。
配置SSH免密登錄
按照上面的配置步驟士修,每次連接到遠程服務器,都需要輸入服務器登錄密碼很麻煩樱衷,可以配置SSH免密登錄,免去每次輸入密碼的煩惱酒唉,具體操作步驟如下:
- 打開win cmd終端矩桂,輸入 ssh-keygen -t rsa 生成秘鑰對
打開生成的秘鑰保存路徑,拷貝
id_rsa.pub
內容痪伦,添加到到云服務器的~/.ssh/authorized_keys
文件后面侄榴。嘗試再次連接,不用輸密碼了网沾,enjoy.
寫在最后
這套遠程開發(fā)環(huán)境體驗下來癞蚕,我整體是比較滿意的,最大的好處是不用給電腦裝太多軟件辉哥,選擇VS Code是因為需要經常在C++/Python/Go三種IDE之間切換比較麻煩桦山,現(xiàn)在即使是電腦配置低點都沒關系,因為所有的編輯器插件擴展和代碼都在云端醋旦,通過 SSH
連接操作一個VS Code打遍所有恒水。
而且由于遠程開發(fā)插件的存在,不論我在哪里饲齐,只要有電腦都能方便的打開云端開發(fā)環(huán)境钉凌,非常的方便,這么好用的工具大幅提升生產力捂人,所以今天來分享給大家御雕。
老規(guī)矩。感謝各位的閱讀滥搭,文章的目的是分享對知識的理解酸纲,技術類文章我都會反復求證以求最大程度保證準確性,若文中出現(xiàn)明顯紕漏也歡迎指出论熙,我們一起在探討中學習福青。
今天的技術分享就到這里,我們下期再見脓诡。
對了无午,今天是母親節(jié),別忘了給家里打個電話祝谚。
原創(chuàng)不易宪迟,不想被白票,如果在我這有收獲交惯,就動動手指「在看」「轉發(fā)」是對我持續(xù)創(chuàng)作的最大支持次泽。
可以微信搜索公眾號「 后端技術學堂 」回復「資料」「1024」有我給你準備的各種編程學習資料穿仪。文章每周持續(xù)更新,我們下期見意荤!