Visual Studio Code 伺服器
Visual Studio Code 伺服器是一項您可以在遠端開發機器上執行的服務,例如您的臺式電腦或虛擬機器 (VM)。它允許您透過本地 VS Code 客戶端從任何地方安全地連線到該遠端機器,而無需 SSH。
什麼是 VS Code 伺服器?
在 VS Code 中,我們希望使用者能夠無縫地利用那些能讓他們最高效的環境。 VS Code 遠端開發擴充套件 允許您直接從 VS Code 在 Windows Subsystem for Linux (WSL)、透過 SSH 連線的遠端機器以及開發容器中進行工作。這些擴充套件會在遠端環境中安裝一個伺服器,從而使本地 VS Code 能夠與遠端原始碼和執行時順暢地互動。
我們現在提供了一個獨立的“VS Code 伺服器”,這是一項基於遠端擴充套件所使用的相同底層伺服器構建的服務,並增加了一些額外功能,例如互動式 CLI 和方便連線到 vscode.dev 的安全連線。

架構
我們希望無論您如何使用編輯器,無論是本地還是遠端,是在桌面端還是在瀏覽器中,都能提供統一的 VS Code 體驗。
對 VS Code 伺服器的訪問已內建到現有的 code CLI 中。
CLI 在 VS Code 客戶端和您的遠端機器之間建立了一個隧道。隧道安全地將資料從一個網路傳輸到另一個網路。

VS Code 伺服器體驗包含幾個元件
- VS Code 伺服器:支援 VS Code 遠端體驗的後端伺服器。
- 遠端 - 隧道擴充套件:自動載入到您的本地 VS Code 客戶端中,它促進與遠端機器的連線。
場景
VS Code 伺服器允許您以新的方式使用 VS Code,例如:
- 在 SSH 支援可能有限的遠端機器上開發,或者您需要 Web 訪問。
- 在不支援安裝 VS Code 桌面版的機器上開發,例如 iPad / 平板電腦或 Chromebook。
- 體驗客戶端安全優勢,所有程式碼都可以在瀏覽器沙盒中執行。
開始使用
您可以選擇兩種啟用隧道的方法,它們將在各自的文件內容中進行更詳細的描述
嘗試內容
許可和其他命令
首次執行 VS Code 伺服器時,您會收到許可條款的提示。您可以在 此處 檢視 VS Code 伺服器的許可。
* Visual Studio Code Server
*
* By using the software, you agree to
* the Visual Studio Code Server License Terms (https://aka.ms/vscode-server-license) and
* the Microsoft Privacy Statement (https://privacy.microsoft.com/en-US/privacystatement).
您可以透過執行 code -h 來探索 CLI 的其他命令,並透過執行 code tunnel -help 來探索隧道命令。

擴充套件命令
與 CLI 一樣,VS Code 遠端隧道擴充套件還有其他命令,您可以透過在 VS Code 中開啟命令面板 (F1) 並鍵入 Remote Tunnels 來探索它們。您可以在 遠端隧道文件 中瞭解更多資訊。
遙測
如果您想停用遙測,可以在啟動 VS Code 伺服器時傳遞 --disable-telemetry:code tunnel --disable-telemetry。或者,如果您想指定初始遙測級別,例如只收集錯誤,您可以傳遞 --telemetry-level,後跟級別(例如,error)。
如果未透過 CLI 停用遙測,VS Code 伺服器將在成功連線後開始遵守客戶端遙測設定(您在 vscode.dev 或桌面上的遙測設定)。
常見問題
VS Code 伺服器是否支援多個使用者訪問同一遠端例項?
否,伺服器例項設計為僅供單個使用者訪問。
我能否將 VS Code 伺服器託管為服務?
否,根據 VS Code 伺服器許可 的規定,不允許將其託管為服務。
是否有 VS Code 伺服器使用的端點列表?
如果您在受限環境中使用,可能需要確保 VS Code 伺服器能夠訪問以下文章中列出的端點
- https://vscode.com.tw/docs/setup/network#_common-hostnames
- https://vscode.com.tw/docs/remote/ssh#_what-are-the-connectivity-requirements-for-the-vs-code-server-when-it-is-running-on-a-remote-machine-vm
是否有其他擴充套件限制?
在使用基於 Web 的 VS Code 例項時,不支援純 UI 擴充套件,您可以在擴充套件作者的 遠端開發 指南中瞭解更多資訊。
是否有瀏覽器限制?
在瀏覽器中使用時,需要考慮一些限制和配置步驟。您可以在 VS Code for the Web 文件中瞭解更多資訊。
如何保持 VS Code 伺服器是最新狀態?
當您連線到遠端機器時,如果更新可用,VS Code 中會收到通知,您可以透過此通知直接更新。
我看到關於金鑰環儲存的錯誤。我該怎麼辦?
設定同步需要針對設定同步伺服器進行身份驗證。相應的金鑰儲存在伺服器上。這需要設定伺服器上的金鑰環。當金鑰環未設定時,VS Code 伺服器會回退到儲存在伺服器上的記憶體中金鑰。在這種情況下,金鑰僅在伺服器生命週期內持久儲存。
此問題 提供了更多上下文資訊,可能有助於您進行故障排除。如果您仍遇到問題,請隨時在 VS Code Remote GitHub 倉庫 中提交新問題。
我可以在哪裡提供反饋或報告問題?
如果您有任何問題或反饋,請在 VS Code Remote GitHub 倉庫 中提交問題。提交問題時,請包含詳細日誌,您可以透過使用 -v 標誌啟動 VS Code 伺服器來啟用詳細日誌:code -v tunnel。
您可以使用 code-server 標籤 僅篩選 VS Code 伺服器相關的問題。