(轉)「效率」使用VScode連接遠程服務器進行開發


原文:https://zhuanlan.zhihu.com/p/141205262

VScode簡介

由微軟推出的一款輕量級編輯器,擁有大量可拓展插件,可以根據自己的需求添加插件使編輯器的功能豐富起來。VScode和Sublime Text應該是最受歡迎的兩款編輯器,本文將介紹在Windows下如何使用VScode連接遠程linux服務器進行開發。

為什么用VScode

連接遠程服務器的方法有很多,比如可以借助XShell、putty等軟件使用ssh命令來登錄遠程服務器。但如果使用這種連接方法在遠程服務器上進行開發工作,會來帶諸多不便,比如:

  • 全程只能在終端使用指令操作,文件操作麻煩。
  • 寫代碼不方便,我們可能會先在本地寫好代碼再使用scp指令把源代碼傳送到服務器再運行,或直接在服務器上使用Vim或Vi進行編輯,這些操作起來我個人覺得都不順手。
  • 服務器上的圖片無法查看,比如有時候我們的程序最后輸出一些圖片,我們在終端上無法查看,還要傳回本地才能看到。

使用VScode能夠很好的解決以上問題,VScode連接服務器后的方便程度和本地開發幾乎沒有差別!在VScode中編輯代碼直接同步更新到服務器上,可以用鼠標在文件目錄對文件進行操作,可以查看圖片。

如何使用VScode連接遠程linux服務器

安裝VScode

直接在官網下載即可。

安裝OpenSSH

該服務的作用是讓你可以在終端使用ssh指令,Windows10通常自帶OpenSSH不需要安裝。

  • Windows10下檢查是否已經安裝OpenSSH的方法:
    按下快捷鍵Win + X,選擇Windows PoweShell(管理員),輸入以下指令:
    Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
    如果電腦未安裝OpenSSH,則State會顯示NotPresent

  • 如果未安裝,則輸入指令:
  • Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
    安裝完成后會出現以下輸出:

  • OpenSSH安裝成功后,Win+R輸入cmd進入終端,輸入ssh命令應該得到如下結果:

安裝Remote-SSH

Remote-SSH是VScode的插件,安裝完VScode以后,直接在插件中搜索ssh,即可找到Remote-SSH,點擊install安裝。

配置Remote-SSH

安裝完Remote-SSH以后左側會出現一個遠程資源管理的圖標,選擇SSH Targets,進入config配置文件

在配置文件中設置服務器信息,輸入HostName和User,保存以后左側會出現對應機器名稱。

更改設置,File->Preferences->Settings->Extension->Remote-SSH,找到Show Login Terminal並勾選。

連接服務器

點擊SSH TARGETS下的服務器旁邊的按鈕紐行連接,彈出讓你輸入密碼:

在這里可能會彈出讓你選擇服務器的平台,需要選擇以后才會出現輸入密碼的步驟

成功連上服務器,點擊有右側的+號創建服務器的終端窗口,可以正常使用了!

我們還可以打開服務器的文件夾

打開以后可以看到服務器文件目錄,直接在文件目錄中選擇文件進行編輯,實時同步到服務器上,這時候已經可以開始愉快的進行開發了,開發體驗媲美本地開發!

通過跳板機連接服務器

有時候我們需要跳板機來連接服務器,也即先連接一台跳板機服務器,然后通過這台跳板機所在的內網再次跳轉到目標服務器。最簡單的做法就是按上述方法連接到跳板機,然后在跳板機的終端用ssh指令跳轉到目標服務器,但這樣跳轉后,我們無法在VScode中打開服務器的文件目錄,操作起來很不方便。我們可以把config的設置改成如下,就可以通過c00跳板機跳轉到c01了:

Host c00
    HostName xxx.xxx.xxx.xxx(跳板機IP)
    User lyfeng

Host c01
    HostName 192.168.0.10(內網地址)
    User lyfeng
    ProxyCommand "openssh的安裝路徑"\ssh.exe -W %h:%p -q c00 # 連接c00, 再通過c00的局域網ssh到c01

openssh的安裝路徑因人而異(我這里是C:\Windows\System32\OpenSSH\ssh.exe)

結語

本文是效率系列的第二篇文章,介紹了如何使用VScode連接服務器進行開發。VScode的Remote-SSH插件是讓我使用VScode的直接原因,實在舒暢,再也不需要使用XShell和Vim這些組合來在遠程服務器上開發了!如果大家還有其他提高工作效率的工具,歡迎討論分享!評論看到了我會盡量回復的!


免責聲明!

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



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