使用Visual Studio Code進行遠程開發


微軟的VS code能夠適應不同開發環境,提供對多種語言的支持,使得使用VS code開發變得很流行了。因為各種原因(比如在本地設置開發環境困難,或者繁瑣,或者開發環境沒有圖形界面),我們可能需要遠程開發。當然我們可以ssh遠程登陸到開發環境,用vim編輯並開發,但這樣肯定放棄了集成開發環境的各種優勢。幸好VS code提供了三個新擴展,來幫助我們進行遠程開發。它們支持在容器中、遠程物理或虛擬機上以及在Windows中的Linux子系統(WSL)上進行無縫開發。

但是現在使用這些遠程擴展需要使用VS code insiders版本,以后可能會在最終版本提供支持。

遠程開發擴展包包含了三個擴展:

  • Remote-SSH:通過SSH遠程連接到物理或者虛擬機
  • Remote-Containers:連接Docker容器進行開發
  • Remote-WSL:使用Windows 中的Linux子系統(WSL)作為完整的開發環境

簡單介紹一下如何使用Remote-SSH。這個擴展是我們可以打開任何安裝有SSH服務的遠端機器,虛擬機,或者容器上的目錄,並且可以使用VS code所有特性,也可以處理遠端機器的任意文件和目錄。

  1. 本地機器當然要有SSH客戶端。
  2. 安裝VS code insiders版本。
  3. 安裝Remote-SSH擴展

Remote-SSH擴展需要密鑰認證方式。以本地是windows環境,遠程開發環境是linux為例。本地的公鑰一般存儲在%USERPROFILE%\.ssh\id_rsa.pub。如果公鑰不存在,通過以下命令生成密鑰對:

ssh-keygen -t rsa -b 4096

然后用以下命令把本地公鑰加入到遠端認證key的文件

ssh-copy-id username_on_host@host_ip

OK,准備工作就完成了!

在界面左邊欄下面選擇Command Palette或者按F1鍵打開Command Palette,運行Remote-SSH: Connect to Host...輸入username@hostname,回車。如果連接成功,會打開一個新的VS code窗口,左下角狀態欄會顯示SSH連接狀態。如果打開一個terminal,會顯示遠程機器的terminal。可以使用所有的VS code的功能完成開發調試工作。

遺憾的是,Remote-SSH擴展只支持x86_64架構的基於linux的OS。如果是其他的架構的系統,會彈出一個失敗的信息。

這種情況下,注定是無法使用VS code的全部功能的。不過可以使用Remote Workspace擴展,把VS code當做一個遠程的文本編輯器來使用,就好像在本地編輯一樣。使用這個擴展,需要建立一個.code-workspace文件,把遠程工程路徑寫入uri鍵值對,支持常見的FTP,FTPs,SFTP協議。通過菜單File >> Open Workspace...打開建立的.code-workspace文件即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM