AdSense

網頁

2020/5/1

Docker 使用PuTTY連線到Docker Toolbox的VirtualBox

本範例記錄如何以在本機以PuTTY連線到Docker Toolbox的VirtualBox的docker環境。

請參考「Windows 7 安裝Docker Toolbox」並啟動Docker。

下載並安裝好PuTTY,PuTTY安裝時也會同時安裝PuTTYgen

在Windows的[開始]的程式搜尋欄輸入"PuTTYgen"可找到PuTTYgen工具,點擊開啟PuTTYgen。



PuTTYgen開啟如下,可產生連線到VirtualBox用的PuTTY私鑰(.ppk)。



點選功能選單[Conversions] -> [Import key]匯入VirtualBox的id_rsa私鑰(private key)檔。



Docker Toolbox的VirtualBox default環境的id_rsa檔案放在
C:\Users\[user]\.docker\machine\machines\default
找到id_rsa並點選Open



然後id_rsa就被匯入PuTTYgen。點選Save private key按鈕儲存,這邊沒設定Key passphrase會跳警告,直接按Yes跳過。





把產生的PuTTY私鑰.ppk檔儲存在你想存放的資料夾,例如我是存在與id_rsa同個目錄。



產生完PuTTY私鑰後即可關閉PuTTYgen工具。


開啟安裝Docker Toolbox時一併安裝的VirtualBox管理員工具(Oracle VM VirtualBox)來查看VirtualBox的IP位置。

選擇預設的環境default,點選[設定值(S)]打開設定視窗。



選擇[網路] -> [介面卡1] -> [進階],點選連接埠轉送(P)



預設會有一組設定好的ssh連線,主機(本機)IP port127.0.0.1:61945對映到客體(ViartualBox default)的IP port127.0.0.1:22(空白代表預設localhost)。主機的IP及port號(127.0.0.1:22)即為PuTTY要連線到VirtualBox default的位置。



到這邊我們取得了連線到ViartualBox的兩樣資訊,也就是PuTTY私鑰與連線IP。


開啟PuTTY,在[Session]設定
[Host Name (or IP address)]為127.0.0.1
[Port]為61945
[Connection Type]選擇[SSH]。



接著在左側[Connection] > [SSH] > [Auth]項目下找到[Private key file for authentication],點選Browse...選擇剛用PuTTYgen產生並儲存的.ppk檔。



設定好以上後按Open開啟連線,在login as輸入預設的帳號docker登入。



登入的地方即為VirtualBox default的環境,也就是Docker Toolbox安裝的docker所在,所以在這能下docker的命令。



離開PuTTY連線輸入exit即可。

連線示意圖。

+--------+   +-----------------+   +-----------------+
| PuTTY  +-->+ 127.0.0.1:61945 +-->+   127.0.0.1:22  |
|(Client)|   | (Physcal Host)  |   |(VirtualBox Host)|
+--------+   +-----------------+   +-----------------+

沒有留言:

AdSense