前言
windows 版的 Docker 有 desktop 和 toolbox 兩個(gè)版本,Docker Desktop 對(duì) win10 版本有要求,低于 win10 Pro/Enterprise(15063+) win10 home(19018+) 只能安裝 toolbox 版本的 Docker。本文主要記錄 Win10 安裝 docker 的問(wèn)題。
desktop 版本
高版本 Win 10
安裝Docker Desktop報(bào)錯(cuò) WSL 2 installation is incomplete,報(bào)錯(cuò)如下圖

解決報(bào)錯(cuò):需要我們自己手動(dòng)更新一下,我們根據(jù)提示去微軟官網(wǎng)下載最新版的wsl2安裝后即可正常打開。更新包下載鏈接
低版本 Win 10
低版本 win 10 系統(tǒng)安裝 desktop 版本會(huì)報(bào)錯(cuò) Docker Desktop requires Windows 10 Pro/Enterprise(15063+) or Windows 10 Home(19018+).,如下圖

toolbox 版本
低版本的 win 10 可安裝 docker-toolbox (EE = Enterprise Edition: 企業(yè)版:付費(fèi);CE = Community Edition 社區(qū)版:免費(fèi)),下載 toolbox 后一直點(diǎn) next 就可以了。
安裝好后雙擊 Docker Quickstart Terminal,出現(xiàn)以下問(wèn)題

缺少boot2docker,雙擊Docker Quickstart Terminal時(shí)會(huì)自動(dòng)下載,但因?yàn)榫W(wǎng)絡(luò)原因下載會(huì)比較慢,直接進(jìn)入給出的網(wǎng)址 v17.03.0-ce/boot2docker.iso 進(jìn)行下載,下載完后將iso鏡像放入指定路徑:

啟動(dòng)了小鯨魚的界面說(shuō)明安裝成功了,默認(rèn)情況下 Docker 不是開機(jī)啟動(dòng)的,使用前需要啟動(dòng) Docker 軟件才能使用 Docker 命令。如果經(jīng)常用到Docker,可以設(shè)置成開機(jī)啟動(dòng)。

遇到的問(wèn)題
配置
在Windows家庭版下安裝了docker,但映射完畢之后,在主機(jī)的瀏覽器中,打開 localhost:port 無(wú)法訪問(wèn)對(duì)應(yīng)的服務(wù)。
這是因?yàn)閐ocker是運(yùn)行在Linux上的,在Windows中運(yùn)行docker,實(shí)際上還是在Windows下先安裝了一個(gè)Linux環(huán)境,然后在這個(gè)系統(tǒng)中運(yùn)行的docker。也就是說(shuō),服務(wù)中使用的localhost指的是這個(gè)Linux環(huán)境的地址,而不是我們的宿主環(huán)境Windows。
因此還需要配置自帶虛擬機(jī)的 ip 和端口號(hào)才能成功啟動(dòng)本地鏡像服務(wù),需要把虛擬機(jī)的 ip 和端口號(hào)映射到本機(jī)。打開虛擬機(jī)的設(shè)置后如下圖


成功啟動(dòng)后如下圖

啟動(dòng)
在 Dockerfile 等配置文件都設(shè)置好后,以為可以成功啟動(dòng)鏡像服務(wù)了,然而可能會(huì)出現(xiàn)下面這個(gè)報(bào)錯(cuò)
standard_init_linux.go:211: exec user process caused "no such file or directory"
解決這個(gè)報(bào)錯(cuò)的方法是需要設(shè)置 entrypoint.sh 入口文件的類型,
設(shè)置方法如下:
- 在
git bash下輸入vi entrypoint.sh命令進(jìn)入該入口文件的編輯模式 - 輸入
:set ff=unix,按回車,文件類型就設(shè)置成功了 - 最后輸入
:wq,然后按回車就保存并退出編輯了
編輯時(shí)如下圖:

設(shè)置成功后如下圖:

安裝好后就可以愉快的開始docker之旅了~ 附上docker 中文文檔