如何在 Windows 作業系統中執行 Docker 客戶端
大家好,今天我們來了解一下 Windows 作業系統中的 Docker 以及在其中安裝 Docker Windows 客戶端的知識。Docker 引擎使用 Linux 特有的核心特性,因此不能透過 Windows 核心執行,所以,(在 Windows 上)Docker 引擎建立了一個小的虛擬系統執行 Linux 並利用它的資源和核心。這樣,Windows Docker 客戶端就可以用這個虛擬的 Docker 引擎來構建、執行以及管理 Docker 容器。有個叫 Boot2Docker 的團隊開發了一個同名的應用程式,它建立了一個虛擬機器來執行基於Tiny Core Linux特製的小型 Linux,來在 Windows 上執行 Docker 容器。它完全執行在記憶體中,需要大約 27M 記憶體並能在 5秒 (因人而異) 內啟動。因此,在用於 Windows 的 Docker 引擎被開發出來之前,我們在 Windows 機器裡只能執行 Linux 容器。
下面是安裝 Docker 客戶端並在上面執行容器的簡單步驟。
1. 下載 Boot2Docker
在我們開始安裝之前,我們需要 Boot2Docker 的可執行檔案。可以從 它的 Github 下載最新版本的 Boot2Docker。在這篇指南中,我們從網站中下載版本 v1.6.1。我們從那網頁中用我們喜歡的瀏覽器或者下載管理器下載了名為 docker-install.exe 的檔案。
2. 安裝 Boot2Docker
現在我們執行安裝檔案,它會安裝 Window Docker 客戶端、用於 Windows 的 Git(MSYS-git)、VirtualBox、Boot2Docker Linux ISO 以及 Boot2Docker 管理工具,這些對於開箱即用地執行全功能的 Docker 引擎都至關重要。
3. 執行 Boot2Docker
安裝完成必要的元件之後,我們從桌面上的“Boot2Docker Start”快捷方式啟動 Boot2Docker。它會要求你輸入以後用於驗證的 SSH 金鑰。然後會啟動一個配置好的用於管理在虛擬機器中執行的 Docker 的 unix shell。
為了檢查是否正確配置,執行下面的 docker version 命令。
docker version
4. 執行 Docker
由於 Boot2Docker Start 自動啟動了一個已經正確設定好環境變數的 shell,我們可以馬上開始使用 Docker。請注意,如果我們要將 Boot2Docker 作為一個遠端 Docker 守護程式,那麼不要在 docker 命令之前加 sudo。
現在,讓我們來試試 hello-world 例子映象,它會下載 hello-world 映象,執行並輸出 "Hello from Docker" 資訊。
$ docker run hello-world
5. 使用命令提示符(CMD) 執行 Docker
現在,如果你想開始用命令提示符使用 Docker,你可以開啟命令提示符(CMD.exe)。由於 Boot2Docker 要求 ssh.exe 在 PATH 中,我們需要在命令提示符中輸入以下命令使得 %PATH% 環境變數中包括 Git 安裝目錄下的 bin 資料夾。
set PATH=%PATH%;"c:\Program Files (x86)\Git\bin"
執行上面的命令之後,我們可以在命令提示符中執行 boot2docker start 啟動 Boot2Docker 虛擬機器。
boot2docker start
注意: 如果你看到 machine does no exist 的錯誤資訊,就執行 boot2docker init 命令。
然後複製上圖中控制檯標出命令到 cmd.exe 中為控制檯視窗設定環境變數,然後我們就可以像平常一樣執行 docker 容器了。
6. 使用 PowerShell 執行 Docker
為了能在 PowerShell 中執行 Docker,我們需要啟動一個 PowerShell 視窗並新增 ssh.exe 到 PATH 變數。
$Env:Path = "${Env:Path};c:\Program Files (x86)\Git\bin"
執行完上面的命令,我們還需要執行
boot2docker start
這會列印用於設定環境變數連線到虛擬機器內部執行的 Docker 的 PowerShell 命令。我們只需要在 PowerShell 中執行這些命令就可以和平常一樣執行 docker 容器。
7. 用 PUTTY 登入
Boot2Docker 會在%USERPROFILE%.ssh 目錄生成和使用用於登入的公共和私有金鑰,我們也需要使用這個資料夾中的私有金鑰。私有金鑰需要轉換為 PuTTY 的格式。我們可以透過 puttygen.exe 實現。
我們需要開啟 puttygen.exe 並從 %USERPROFILE%.ssh\id_boot2docker 中匯入("File"->"Load" 選單)私鑰,然後點選 "Save Private Key"。然後用儲存的檔案透過 PuTTY 用 docker@127.0.0.1:2022 登入。
8. Boot2Docker 選項
Boot2Docker 管理工具提供了一些命令,如下所示。
$ boot2docker
Usage: boot2docker.exe [<options>] {help|init|up|ssh|save|down|poweroff|reset|restart|config|status|info|ip|shellinit|delete|download|upgrade|version} [<args>]
總結
透過 Docker Windows 客戶端使用 Docker 很有趣。Boot2Docker 管理工具是一個能使任何 Docker 容器能像在 Linux 主機上平滑執行的很棒的應用程式。如果你更仔細的話,你會發現 boot2docker 預設使用者的使用者名稱是 docker,密碼是 tcuser。最新版本的 boot2docker 設定了一個 host-only 的網路介面卡提供訪問容器的埠。一般來說是 192.168.59.103,但可以透過 VirtualBox 的 DHCP 實現改變。
如果你有任何問題、建議、反饋,請在下面的評論框中寫下來然後我們可以改進或者更新我們的內容。非常感謝!Enjoy:-)
via: http://linoxide.com/linux-how-to/run-docker-client-inside-windows-os/
作者:Arun Pyasi 譯者:ictlyh 校對:wxy
相關文章
- VNC客戶端推薦,Windows系統下VNC客戶端推薦VNC客戶端Windows
- VNC客戶端是Windows,VNC客戶端是Windows如何進行操作VNC客戶端Windows
- 作業系統-執行緒作業系統執行緒
- 作業系統中的執行緒種類作業系統執行緒
- Windows下同時安裝執行多個版本的jmeter客戶端WindowsJMeter客戶端
- java 執行作業系統命令Java作業系統
- 作業系統:多執行緒作業系統執行緒
- Python 執行 Linux 作業系統命令PythonLinux作業系統
- 【作業系統】程式與執行緒作業系統執行緒
- 作業系統的執行環境作業系統
- vnc windows客戶端,vnc windows客戶端下載,具體使用教程。VNCWindows客戶端
- Windows作業系統教程Windows作業系統
- Kubernetes 使用 Kubevirt 執行管理 Windows 10 作業系統Windows作業系統
- Thrift安裝與伺服器、客戶端的編寫執行演示(windows版本)伺服器客戶端Windows
- Docker v2ray 客戶端Docker客戶端
- Windows下安裝redis客戶端WindowsRedis客戶端
- 客戶管理系統2022年行業研究報告2行業
- 走近原始碼:Redis命令執行過程(客戶端)原始碼Redis客戶端
- 利用執行緒池給客戶端傳檔案執行緒客戶端
- flask框架圖書管理系統客戶端Flask框架客戶端
- Linux作業系統執行級別介紹Linux作業系統
- 【作業系統】1.程序和執行緒作業系統執行緒
- VMware - 此主機不支援64位客戶機作業系統作業系統
- ESP作為單連線中的TCP客戶端TCP客戶端
- win10系統maven客戶端安裝教程_win10系統maven客戶端安裝步驟Win10Maven客戶端
- 企業客戶管理系統:智慧管理客戶資料 擴充客戶資源
- Windows Subsystem for Linux 允許在Windows 11中執行Linux系統WindowsLinux
- Laravel後臺作為客戶端,socket.io作為服務端,App或其他作為另一個客戶端Laravel客戶端服務端APP
- 企業如何使用CRM客戶管理系統全面瞭解客戶
- 國家漏洞庫CNNVD:關於微信Windows客戶端遠端程式碼執行漏洞的預警CNNWindows客戶端
- win系統如何在mac上執行Mac
- 作業系統——深入理解程式和執行緒作業系統執行緒
- 作業系統-執行緒和程式的區別作業系統執行緒
- 作業系統複習(程式、執行緒、死鎖)作業系統執行緒
- paramiko執行多個作業系統命令並返回作業系統
- 作業系統_程式和執行緒的區別作業系統執行緒
- centos7系統msyqldump 客戶端安裝CentOS客戶端
- Python執行作業系統命令並取得返回值和退出碼,支援有互信的遠端執行Python作業系統
- 客戶管理系統SAAS應用行業軟體系統進銷存CRM管理系統行業