本文將指導您如何在Amazon EC2上配置VS Code遠程開發環境,實現便捷、高效的雲端開發。 此方法具有可移植性強、可擴展性高、生產與開發環境同步、開發流程流暢以及可靠性高等優點。但需注意,穩定的網絡連接至關重要,以避免因斷線導致工作丟失。
關鍵要點:
遠程開發簡單來說就是在遠程服務器上進行開發。本地機器通過SSH連接到雲端服務器。 SSH代表安全外殼或安全套接字外殼——一種通過終端安全地在兩台計算機之間進行通信的協議。
圖片源自:code.visualstudio.com
Amazon Elastic Compute Cloud (EC2) 提供可擴展的計算資源來構建應用程序(服務器),而無需處理管理物理計算機的責任。在本例中,我們將使用Visual Studio Code編輯器,並通過SSH連接將其連接到EC2實例。
要學習本教程,您需要具備以下條件:
在介紹操作方法之前,讓我們先了解一下遠程開發的原因。以下是服務器開發的一些優缺點。
首先,優點:
現在讓我們來看看缺點。
避免在遠程環境中進行編碼的主要原因是需要互聯網連接才能訪問您的遠程服務器。使用快速的互聯網連接,在打開、創建和鍵入文件以及與遠程服務器的命令行交互時,遠程開發體驗感覺很自然。但是,使用緩慢的3G網絡,您可能會與服務器斷開連接,這可能會導致工作損失,從幾秒鐘到幾分鐘不等。
接下來,讓我們進入文章的核心內容——設置一個免費的EC2實例並將其連接到我們的本地VS Code編輯器。
讓我們逐步了解如何創建和配置您的雲實例。
登錄AWS管理控制台。
點擊EC2進入EC2儀表板。點擊啟動實例按鈕。您將被定向到AMI選擇頁面。
在AMI選擇頁面上,搜索Ubuntu並選擇您首選的版本。確保架構設置為x86。我們將使用x86架構,因為它與ARM相比具有更廣泛的軟件支持。
選擇t2.micro作為實例類型。
將其餘步驟保留為默認設置,直到您進入添加存儲步驟。我建議您至少使用24GB。如果您正在為Node.js開發,npm庫會佔用相當大的空間,使用更少的空間可能會讓您陷入困境,因此謹慎為妙。
當您進入配置安全組步驟時,您需要允許傳入SSH連接,您有兩個選擇:
點擊啟動後,系統會要求您選擇或創建SSH密鑰對。選擇創建新的密鑰對。命名密鑰對。
點擊下載密鑰對按鈕將獲得私鑰文件。這將下載一個pem文件,您應該將其存儲在方便的目錄中並記下其目錄路徑。
接下來,點擊啟動實例按鈕,您的EC2實例將開始創建過程。轉到實例頁面,您應該會找到您新創建的實例。
最後,點擊實例以導航到其詳細信息頁面,並記下其公共IPv4 DNS地址。
我們將此地址稱為實例的“主機名”。
既然我們已經成功創建了一個EC2實例,讓我們看看在Visual Studio Code中我們需要做什麼。如果您的機器上沒有安裝Visual Studio Code,請訪問其下載頁面並獲取適合您系統的正確軟件包。
安裝VS Code後,打開編輯器中的擴展程序選項卡(您可以選擇使用快捷鍵Ctrl Shift X),並在擴展程序市場中搜索“remote ssh”。
找到並安裝Remote-SSH擴展程序,確保它是正確的擴展程序(由Microsoft創作,在撰寫本文時安裝量為430萬)。
點擊編輯器左下角的新按鈕。這將打開命令面板,您應該在其中選擇Remote-SSH: Open Configuration File。
一個SSH配置文件將彈出(如果擴展程序識別多個配置文件,請選擇當前用戶的配置文件),您可以在其中輸入以下配置:
<code>Host VS Code-ssh-tutorial HostName <hostname> User ubuntu IdentityFile <path to identity file></path></hostname></code>
點擊左下角的remote-ssh按鈕,然後點擊下拉菜單中出現的Connect to Host。
將出現另一個下拉菜單。選擇您在上一步中創建的主機配置(VS Code-ssh-tutorial)。如果一切順利,您應該會看到一個新的編輯器窗口,要求您選擇您的工作目錄。
這樣,您就設置好了遠程開發環境。現在讓我們使用Node.js創建一個簡單的演示應用程序。
使用快捷鍵打開終端:Ctrl Shift `,然後使用以下命令安裝Node.js:
<code>sudo apt update sudo apt install nodejs</code>
接下來,在一個名為test的新目錄中創建一個index.js文件:
<code>mkdir test && cd test && touch index.js</code>
將以下內容放入index.js文件中:
//index.js const http = require('http'); const hostname = '127.0.0.1'; const port = 3000; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello World'); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); });
使用服務器終端中的以下命令運行此測試服務器:
<code>node index.js</code>
運行此代碼後,VS Code編輯器的右下角將彈出一個小的彈出窗口,如下所示。
您有兩個選項,在瀏覽器中打開和在編輯器中預覽。無論您選擇哪個,您都會發現服務器的端口已轉發到您的localhost,並且可以使用localhost:3000訪問。
如果您在連接到您創建的實例時遇到任何問題,以下是一些故障排除技巧:
在本教程中,我們創建了一個免費的AWS t2.micro實例。我們將其設置為允許來自本地機器的SSH連接,並通過遠程SSH擴展程序連接到它。最後,我們能夠訪問我們在遠程環境中創建的端口轉發服務器。
(此處省略FAQ部分,因為篇幅過長,且與文章主體內容重複性較高。 FAQ部分內容可以根據需要重新組織,並精簡重複信息。)
以上是在Amazon EC2上免費設置VS代碼遠程開發的詳細內容。更多資訊請關注PHP中文網其他相關文章!