由於公司里測試服務器時常會有變動,每次變動之后都需要在新的服務器上配置一遍環境,實在是麻煩。后來我突然想到了在網上看到的資料中說Docker能快速部署可移植的容器,所以我就試着用Docker搭建了Tomcat和Oracle的測試環境。所以本篇以實戰為主,主要講Docker的一些基本概念和常用的命令。
Docker的實現原理
原本我想在這里先介紹一下Docker,但是似乎網上已經有大量的信息的,建議對Docker不是很了解的人先看一下百度百科_Docker詞條的“原理”部分,所以這里就不再闡述。
准備工作
Linux用戶
如果你是linux用戶,只要Linux kernel大於3.8就沒問題了,再關閉系統的selinux組件,用你系統里的包管理工具(apt-get、yum等)直接安裝Docker就行了。比如在CentOS中只要使用yum install docker-io就可以一鍵安裝完docker。
1、禁用selinux
由於selinux和LXC(Docker實現虛擬化的方式)有沖突,所以需要禁用selinux。編輯/etc/selinux/config,設置兩個關鍵變量。
SELINUX=disabled
SELINUXTYPE=targeted
- 2、安裝docker
Ubuntu/debian 使用apt-get install docker-io
CentOS/REHL 則使用yum install docker-io
- Windows或Mac用戶
因為Docker並沒有直接支持這兩個系統,所以不能直接安裝Bocker,但是我們可以通過Boot2docker這款工具讓我們的系統間接支持。
首先你需要先安裝一個virtualbox,這個是為安裝Boot2docker做准備的,點
virtualbox官網下載頁面,進入后選擇你系統對應的版本並安裝。
進入到
Boot2docker官網,下載自己系統對應版本的Boot2docker安裝包,安裝完之后,在你的程序列表里應該能看到boot2docker圖標了。
注:如果你是Mac用戶,雖然你也可以使用brew安裝Boot2docker,不過還是不建議你那樣做,因為我用brew安裝了Boot2docker后,並沒有創建圖標,需要你使用Boot2docker的初始化命令來啟動Boot2docker。如果你已經這樣做了,可以先用brew卸載Boot2docker,然后刪除用戶目錄下的.boot2docker目錄,再打開Virtualbox刪除boot2docker-vm虛擬機(如果沒有則不用刪除)。然后你就可以通過安裝包來安裝Boot2docker了。
為了避免你在后面使用中產生混亂,這里我先說一個boot2docker的實現原理。boot2docker是在你的系統里創建一個linux的虛擬機,這個虛擬機已經安裝好了docker,所有的docker相關的操作都是在這個虛擬機進行的。你可以使用這下這條命令來看到虛擬機的IP地址。通常ip地址應該是192.168.59.103。
echo $DOCKER_HOST
- 測試是否已成功安裝Docker
測試方式比較簡單,打開boot2docker程序,會打開了一個終端,輸入下面的命令后,得到的是一段以“Hello from Docker”開頭的介紹信息,則說明安裝沒問題了。
docker run hello-world