因爲docker進程使用的是Linux內核特性,因此不能在原生的os x中安裝docker,若是想要在os x中安裝docker,必須先安裝boot2docker,這個程序中包含了 VirtualBox
虛擬主機(VM), Docker 和 Boot2Docker 管理工具。linux
Boot2Docker 是專門爲OS X上運行 Docker 而開發的一個輕量級的虛擬主機管理工具。當Virtual Box在內存中啓動後,它會下載一個大約 24MB 的 ISO文件(boot2docker.iso),下載完成後,大約5S中就會啓動了。git
你的 OS X 版本必須大於等於 10.6 "Snow Leopard" 才能夠運行 Boot2Docker 。github
當咱們在一臺 Linux 主機上安裝完 Docker 以後,咱們的機器中就包含了本地主機和 Docker 主機。若是從網絡層來劃分,本地主機就表明你的電腦,而 Docker 主機就表明你運行的容器。docker
在一個典型的 Linux 主機上安裝 Docker 客戶端,運行 Docker daemon ,而且在本地主機上直接運行一些容器。這就意味着你能夠爲 Docker 容器指定本地主機端口,例如 localhost:8000
或者 0.0.0.0:8376
。shell
在 OS X 上安裝的 Docker , docker
進程是經過 Boot2Docker 在 Linux 虛擬主機上運行的。ubuntu
在 OS X 中,Docker 主機地址就是 Linux 虛擬主機地址。當你啓動 boot2docker
進程的時候,虛擬主機就會爲它指定IP。在 boot2docker
下運行的容器,經過端口映射的方式將端口映射到虛擬主機上。你能夠經過本頁面上的操做實踐來體會到這一點。bash
點擊進入boot2docker/osx-installer release頁面。(這個下載有點慢,咱們能夠去這個地方Boot2Docker:連接: http://pan.baidu.com/s/1hrzFYSG 密碼: ksec)網絡
在下載頁面中點擊 Boot2Docker-x.x.x.pkg
來下載 Boot2Docker。app
雙擊安裝包來安裝 Boot2Dockerssh
將 Boot2Docker 放到你的 "應用程序(Applications)" 文件夾
安裝程序會將 docker
和 boot2docker
二進制包放到 /usr/local/bin
文件夾下。
想要運行一個 Docker 容器,首先,你須要先啓動 boot2docker
虛擬機,而後使用 docker
命令來加載、運行、管理容器。你能夠從你的應用程序文件夾雙擊啓動 boot2docker
,或者使用命令行來啓動。
提示: Boot2Docker 是被做爲開發工具而設計的,不適用於生產環境中。
當你從你的「應用程序文件夾(Applications)」 來啓動 "Boot2Docker" 程序, 程序會作以下事項:
docker
進程到這裏就啓動完畢了, 你能夠運行 docker
命令。你能夠運行 hello-word
容器來驗證你是否安裝成功。
$ docker run hello-world Unable to find image 'hello-world:latest' locally 511136ea3c5a: Pull complete 31cbccb51277: Pull complete e45a5af57b00: Pull complete hello-world:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security. Status: Downloaded newer image for hello-world:latest Hello from Docker. This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (Assuming it was not already locally available.) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash For more examples and ideas, visit: http://docs.docker.com/userguide/
你可使用命令行來啓動和關閉 boot2docker
。
使用命令行來初始化和運行 boot2docker
,有以下步驟:
一、 建立一個新的 Boot2Docker 虛擬機
$ boot2docker init
這會建立一個新的虛擬主機,你只須要運行一次這個命令就能夠了,之後就不須要了。
二、 啓動 boot2docker
虛擬機,之後每次再使用,就先有這個啓動虛擬機,用boot2docker關閉虛擬機了,再也不須要boot2docker init。
$ boot2docker start
執行以後,效果以下:
啓動的時候,沒有成功,由於沒有配置好環境變量,上面提示配置環境變量
三、 經過 docker 客戶端來查看環境變量
$ boot2docker shellinit
每臺機器的具體路徑和地址可能都不相同。這個沒有設置環境變量,只是查看了下,啓動hello-world出問題了。下面來設置環境變量
四、 使用 shell 命令來設置環境變量(這個必須設置,其實就是將上面的三個export 裏面的設置到環境變量裏面去了,若是沒有設置,後面的啓動hello-world會有問題)。
$ eval "$(boot2docker shellinit)"
能夠看獲得,再次查看環境變量的時候,有提示說環境變量已經設置正確,後面再啓動hello-world就會正確。
五、 運行 hello-word
容器來驗證安裝。
$ docker run hello-world
這一部分,須要你提早運行 boot2docker
並初始化 docker
客戶端環境。你能夠運行下邊的命令來驗證:
$ boot2docker status $ docker version
本節咱們經過使用 boot2docker
虛擬機來建立一些容器任務。