vscode遠端程式設計 終極方案
很多時候,我們會需要通過筆記本連伺服器進行程式碼除錯,但如果要從校外或是公司外連機房,有時會需要經過多次網路跳轉,例如:你的PC -> 學校VPN -> 機房某網段跳板機 -> 遠端目標機。在這種情況下,最簡單的方法是用vim等終端工具進行程式設計,但現在的程式設計工具發展的如此迅速,尤其是vscode這類自定義程度很高的工具的出現,讓我決定花一些時間思考如何讓remote程式設計變得更愉快。經過幾小時的試驗,最終得到了一個我比較喜歡的方案,與大家分享。
首先展示一下最終效果:
遠端伺服器上的vscode的程式設計體驗與local模式幾乎一致,有個缺點是無法通過EXTENSIONS市場來一鍵安裝外掛(替代方案是利用VSIX,參考連結)。
需要用到的工具:
- Windows系統的電腦,無論配置多低都ok,平板也ok,只要能執行MobaXterm就行,作為本地裝置;
- MobaXterm,作為隧道工具(就是因為這個軟體只支援windows系統所以才限定了OS,當然還有其他的tunnel方案可以繞開OS的限制,但比較繁瑣,在這裡就不鋪開介紹了);
- Code-server,開源軟體,遠端部署,直接下載到遠端目標機上,codeserver的下載連結。一般來說,如果遠端是Intel的晶片,就選擇下載amd64版本的tar.gz。
- Tmux工具,在遠端用yum(centos)或者apt-get(ubuntu)安裝一下就行,主要是為了便於後臺執行和管理。
- 瀏覽器,你的PC上一般都有。
具體步驟:
- 遠端目標機部署code-server。
- 解壓codeserver;
tar -zxvf ./code-server-3.8.0-linux-amd64.tar.gz
- 把你的code-server的bin路徑新增到~/.bashrc的PATH中,方便以後一鍵啟動;
- 先執行一下bin裡面的code-server,然後ctrl+C退出程式,此時會在你的使用者目錄裡生成一個配置檔案,路徑是~/.config/code-server/config.yaml
- 配置config.yaml檔案,修改bind-addr成你的目標機IP:你想要的codeserver埠(要用實際的IP,別用localhost或者127.0.0.1),修改password成便於記憶的,用於後面登入驗證;
- 在遠端執行tmux,進入後執行code-server(如果沒有新增到PATH裡的話,就在對應bin目錄下執行),成功的話會看到下方紅框內的IP和埠已經變成了你設定的值;
- Detach tmux (ctrl+b d),退到外面來,接下來就沒遠端伺服器什麼事了。
- 解壓codeserver;
- 在本地開啟你的校園VPN,連進校園網。我校用的是anyconnect,直接照常連上就行。
- 在MobaXterm上設定Tunnel,配置如下,埠號a可以自定義: -> ->
- 開啟你的瀏覽器,輸入127.0.0.1:埠號a,如果成功的話會讓你輸入一開始設定的密碼。
- 開始你的遠端程式設計吧~ 只要有瀏覽器就行!
使用Tips:
- 保持MobaXterm執行,tunneling別關別斷;
- 如果server崩了,可以用MobaXterm以SSH的方式登入遠端,attach上Tmux,重啟一下code-server。
- 寫程式碼時隨手儲存,避免網路問題導致程式碼丟失。
參考連結:
https://zhuanlan.zhihu.com/p/62570740
https://github.com/cdr/code-server/releases
https://github.com/cdr/code-server/blob/v3.8.0/doc/install.md
相關文章
- 極速程式設計體驗:VsCode和webstorm插上ChatGPT程式設計VSCodeWebORMChatGPT
- UI設計終極配色指南UI
- 遠端程式碼載入方案
- vscode終端行數修改VSCode
- VScode 遠端開發配置VSCode
- vscode 遠端連線設定免密登入VSCode
- 非同步程式設計的終極解決方案 async/await:用同步的方式去寫非同步程式碼非同步程式設計AI
- VSCode 遠端連線失敗VSCode
- vscode遠端除錯c++VSCode除錯C++
- PyCharm Pro 2023:Python程式設計的終極利器 mac/win版PyCharmPython程式設計Mac
- 極限程式設計程式設計
- Go實現ssh執行遠端命令及遠端終端Go
- 旁聽移動終端程式設計課程收穫程式設計
- vscode配置遠端linux系統除錯VSCodeLinux除錯
- windows系統vscode遠端除錯MySQLWindowsVSCode除錯MySql
- VSCode 遠端開發外掛快速使用VSCode
- vscode 連線遠端伺服器 sftpVSCode伺服器FTP
- Exception in thread “main” 終極解決方案ExceptionthreadAI
- 《Linux系統程式設計訓練營》8_Linux 終端與程式Linux程式設計
- 扁平化圖示的終極設計指南
- 如何遠端獲取汙水處理裝置資料並進行遠端程式設計除錯程式設計除錯
- MetaWork:拜託,這樣遠端結對程式設計超酷的!程式設計
- vscode中整合豆包MarsCode程式設計助手VSCode程式設計
- 快速使用 vscode 進行 Java 程式設計VSCodeJava程式設計
- 快捷鍵ctrl+`打不開vscode終端VSCode
- Shell程式設計——極簡教程程式設計
- DBeaverUltimate for Mac v23.3.1終極版:終極資料庫管理解決方案Mac資料庫
- 終極自託管解決方案指南
- mac php環境終極解決方案MacPHP
- 前端(React)生成pdf終極解決方案(^_^)前端React
- Loguru:Python 日誌終極解決方案Python
- H5定位終極解決方案H5
- 前端資料請求的終極方案前端
- 程式設計師必備之終端模擬器,讓你的終端世界多一抹“顏色”程式設計師
- Modbus RTU(Remote Terminal Unit 遠端終端單元)REM
- 玩一玩 Ubuntu 下的 VSCode 程式設計UbuntuVSCode程式設計
- 幽默:VSCode是程式設計師最好的朋友VSCode程式設計師
- 程式設計師如何在VsCode上看基金?程式設計師VSCode