Skip to main content

VSCode Remote-SSH with Azure

Why to use #remote-SSH ?

  1. Access to Specialized Environment 需要特定環境

    當本地開發環境與專案所需的環境不相符時,可以使用 remote-SSH。例如,可能需要使用特定版本的軟體或工具,而本地環境可能過於陳舊或不符合需求

  2. Cross-Platform Development 跨平台開發

    當需要確保軟體在不同操作系統(e.g., Windows, Linux, macOS)上運行良好時,使用 remote-SSH 允許開發人員在不同平台上進行測試和調試,方便跨平台應用程式或跨瀏覽器開發

  3. Cloud-Based Development 遠端伺服器開發

    當開發的應用程序最終需要在雲端伺服器上運行,如 AWS、Azure 或 Google Cloud 等,使用 remote-SSH 使開發人員能夠輕鬆地遠程訪問和管理這些伺服器

  4. Resource-Intensive Tasks 需要特定電腦資源

    當開發任務需要大量計算資源或記憶體時,使用 remote-SSH 允許將這些任務在遠程伺服器上執行,而不必擔心本地計算機的性能限制

  5. Avoid local configuration 避免本地配置

    某些開發環境可能需要複雜的配置和依賴安裝。使用 remote-SSH 可以避免煩人的本地配置和安裝程序,並使開發人員能夠更快地開始工作

專案環境說明

  1. Cloud: Azure

  2. Editor: VSCode

    需要安裝 Remote-SSH 套件

  3. Version control service: Gitlab

步驟及做法

Step 1 : 在 Azure 創建新的 Resource group,並在下面新增 一台 VM

  • 點擊新增 Azure virtual machine
  • 選擇 Resource group
  • 設定 Machine name 和 Region (注意:region 的選擇會影響 size 選項和價格方案)
  • 選擇驗證方式為 SSH public key
  • 設定 Username
  • 選擇 SSH public key source 為 Use existing public key
  • 查看本地的 SSH key
        ## 本地 SSH key 通常在 ~/.ssh 目錄下
    cd ~/.ssh
    ## 倘若本地沒有 SSH key 的話則執行下面指令,這會產生一個私鑰和一個公鑰
    ssh-keygen
    ##複製公鑰檔案
    cat ~/.ssh/id_rsa.pub
  • 將公鑰內容貼到 SSH public key 欄位上
  • 倘若希望省錢的話,可以在 Management 設定 Auto-shutdown
  • 點擊 Review + create

Step 2: VS Code 連線到 VM

  • 打開命令面板,輸入 "Remote-SSH: Connect to Host"
  • 選擇 "Add New SSH Host"
  • 輸入 Azure VM 的 SSH 連接資訊,格式為 username@server_host
    • server_host : public IP 地址
    • username : 創建 VM 時設定的 username ![[VSCode ssh.png]]
  • 成功登入後,就會開啟一個新視窗(如果視窗左下角有顯示 SSH:server_host 則表示連線成功)

Step 3: 檢查是否安裝 Git

    ## 查看 git 版本
git --version
## 若未安裝 git 則在 ubuntu環境上執行
sudo apt-get update
sudo apt-get install git

Step 4: 在 VM 環境上創建 SSH keys (同本地創建一樣的指令)

Step 5: 將公鑰內容加到 GitLab SSH keys 中

  • 點擊 Setting => SSH keys
  • 新增 key ,並將 VM 上創建的公鑰內容複製貼上

Step 6 : Git clone 專案到 VM 上

Step 7: 安裝專案相關的 dependency

Reference