AdSense

網頁

2020/5/1

Windows 7 安裝Docker Toolbox

本篇記錄在Windows 7安裝Docker Toolbox

通常安裝的docker又叫做Docker Desktop,也就是裝在作業系統的docker。

在Windows 10或新的MacOS可以直接安裝Docker Desktop,但較舊的系統如Windows 7必須使用Docker Toolbox

Windows 7無法直接安裝Docker Desktop是因為少了Windows 10專業版以上才有的Hiper-V虛擬技術。


Docker Toolbox的github release頁面點選DockerToolbox-x.x.x.exe下載安裝檔,本範例下載的版本為DockerToolbox-19.03.1.exe (231 MB)。



點擊兩下開始安裝程序。



選擇安裝位置,預設安裝在C:\Program File\Docker Toolbox



勾選要安裝的組件,原則上全部勾選。若你已經安裝過Git Bash則不用勾選最下面的Git for Windows。



全部勾選。



確認安裝資訊後點選Install開始安裝。



安裝結束。



安裝完成後在桌面會多出下面三個icon,分別為Oracle VM VirtualBox、Kitematic(Alpha)、Docker !uickstart Terminal。



點擊Docker Quickstart Terminal啟動Docker Toolbox。



如果Git Bash不是安裝在預設的C:\Program Files\Git,則啟動時會要求你指定bash.exe,因為Docker Toolbox依賴bash來執行命令。例如我的Git Bash是自行安裝在D:\Applications\Git,所以我要選擇\bin目錄下的bash.exe給Docker Toolbox使用。



啟動後會出現下面訊息,稍微等一兩分鐘。



出現下面畫面後就可以開始執行docker指令了。可以看到Docker Quickstart Terminal建立並使用default machine,IP為192.168.99.100(是VirtualBox IP,非本機IP。)



輸入docker run hello-world來執行第一個docker image來測試是docker是否可正常使用。

由於hello-world image並不存在,所以docker會到Docker Hub去下載然後執行。



輸入docker image ls可列出目前的鏡像(image)。



輸入docker --version查看安裝的docker版本。

$ docker --version
Docker version 19.03.1, build 74b1e89e8a

Docker Toolbox實際是透過Docker Machine把docker(Docker Engine)運行在VirtualBox虛擬機上的Docker host。

docker-machine ls可列出目前的Docker Machine。

$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER    ERRORS
default   *        virtualbox   Running   tcp://192.168.99.100:2376           v19.03.5

Docker Toolbox在Windows 7安裝docker的示意圖。

+---------------------------+
|     Docker container      |
+---------------------------+
|       Docker Engine       |
+---------------------------+
|  Docker Machine (default) |
+---------------------------+
|     VM OS (ViratualBox)   |
+---------------------------+
|     HOST OS (Windows7)    |
+---------------------------+
| Infrastructure (Hardware) |
+---------------------------+


若文章對您有幫助還幫忙點個廣告,謝謝您的支持。



沒有留言:

AdSense