使用SSH 及vscode做機器學習開發

Qi Fong
Jul 18, 2023

--

繼上一篇"Deploy your machine learning server by JupyterLab"介紹以JupyterLab作為Machine/deep learning server,本文介紹以SSH遠端連線machine server,並以vscode做開發。

一、前言

雖然以JupyterLab做為遠端開發的server是一個方式,但未必每個人都習慣以Jupyter notebook作為開發。

以我個人為例,比起使用jupyter notebook,我更喜歡使用vscode撰寫程式碼,同時也可以選擇各種虛擬環境執行不同的專案。

以下將介紹如何以windows筆電架設ssh server,並且以另一台電腦遠端連線server作為開發。

二、設備資訊

Server機器:

OS: Windows 11 專業版

CPU: i7–12700H

Memory: 16GB

GPU: RTX 3060 Laptop 6GB

User

Macbook Pro 14吋

三、實作

  1. 安裝OpenSSH: 在[應用程式]-->[選用功能]下,點選[新增選用功能]的[檢視功能]

2. 找到[OpenSSH],下一步

3. 重新開機

4. 以系統管理員開啟[Windows PowerShell]

5. 逐一輸入以下指令

Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
Get-NetFirewallRule -Name *ssh*
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

6. 以另一台電腦測試是否可以ssh連入。打開Terminal,並輸入以下指令

ssh 使用者名稱@IP
# ex:
# ssh henry@192.168.50.46

看到以下畫面代表有成功連線

7. vscode 安裝 Remote - SSH

8. 勾選Show Login Terminal

8. 新增SSH連線&輸入資訊

LabServer可以自行更改

HostName: IP

User: 使用者名稱

9. 連線&輸入server密碼

10. 連線成功

若有成功連入後就可以開始選擇工作目錄了

四、後記

本篇SSH連線,相比JupyterLab,我認為更有泛用性,不只作為機器學習開發之用,適合大多數開發情境。希望有幫到相同需求的人,有錯的話再請不吝告知,感謝~

Reference

--

--

Qi Fong
Qi Fong

No responses yet