在MAC上快速安裝Docker

一 系統需求

MAC OSX的系統要10.8 Mountain Lion以上,我用的是EL Captain,10.11.2。


二 安裝說明

因爲Docker daemon需要用到Linux特性的內核,因此無法在OSX上直接運行,需要將docker-machine 加載並運行在一個Linux虛擬機上,這個虛擬機運行在MAC的OSX之上。示意如下:

wKiom1aN7PWwjpKdAAFcz7fxUrQ134.png

Docker 提供toolbox工具箱,可以快速安裝並擁有一個Docker環境,工具箱的最新版本是1.9.1g,

存放在github上,我把它下載下來,放在網盤上,供國內用戶快速下載。

MAC 版下載鏈接: 

http://pan.baidu.com/s/1Omab8 密碼: 4vcp

Windows 版下載鏈接:

 http://pan.baidu.com/s/1dDR3FNz 密碼: 2a6s


Toolbox中包含的組件有:

  • Oracle VM VirtualBox:Oracle的虛擬軟件

  • Docker Machine :Linux VM

  • Docker Engine : docker 

  • Docker Compose :  docker-compose

  • Kitematic, the Docker GUI

  • a shell preconfigured for a Docker command-line environment


三 安裝Toolbox

Toolbox的安裝很簡單,過程略。安裝完成後,在OSX上,會新增三個應用:

wKioL1aN6-TSyoIpAAJXYb3WJwQ309.png

Docker Quickstart Terminal: Docker命令窗口,默認連接到Default的Docker machine

Kitematic:Docker hub的圖形連接工具

Virtualbox:虛擬機管理工具,在OSX中,自動安裝了docker-machine 應用,




四 運行一個容器Container


安裝完成後,運行Docker Q..(quick start) Terminal, 會自動運行toolbox預置好的腳本,在Virtual box中生成一個虛擬機,並配置好Docker環境,腳本的執行過程和結果如下:

wKioL1aOctOj_XpzAAKtKMd8N7c218.png

此時,Virtual box中新增一個Default VM

wKioL1aOcxbxkpwuAASV29bDlWM588.png


也可以在OSX Shell中手動去創建一個Container,基本的過程包括:

  1. 從OSX的Shell中,通過docker-machine命令創建新的Docker虛機(虛機名稱2nd)

    docker-machine create --driver virtualbox 2nd  

    wKiom1aOgxeTOlL0AAQ41_1tg3g088.png

    docker-machine 是用來管理Virtual box虛機的,可以支持命令行的開關機及重啓等操作,並且可以docker-machine ls                     查看所有的虛擬機及信息

    wKioL1aOhH7T5JCEAAEQqsNiSe8404.png

    docker-machine env VM名稱    查看某個虛機的環境變量

    wKioL1aOhm6za_OdAALZ_oZ3iPg759.png


  2. 連接到新創建的虛機中

      在OSX shell中,連接到docker-machine中

      eval $(docker-machine env 2nd)

   

如果使用Quickstart terminal,步驟1、2會在打開時自動執行。


五 運行第一行docker命令

在Quickstart terminal,OSX shell或者Virtualbox的虛機中,都可以執行docker命令,這第一行的命令,自然是Hello world啦,

         docker run hello-world

wKioL1aOfFGzLCktAAHWdeMPj9o768.png


看到輸出正常,心理是不是還有點小興奮呢?

這短短的命令裏面,卻也蘊藏着Docker原理。

  1. Docker客戶端連接到了Docker的進程Deamon

  2. Docker進程從Docker hub中,pull下了 hello-world 的鏡像

  3. Docker daemon用這個鏡像創建了一個新的容器,並且生成了你現在看到的內容

  4. Docker daemon將輸出傳輸到客戶端。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章