2.1 安裝 Docker 的先決條件
運行 64 位 CPU 架構的計算機,Docker 目前不支持 32 位 CPU
運行 Linux 3.8 或者更高版本內核。
內核必須支持一種適合的存儲驅動 (storage driver),例如 Device Mapper, AUFS
內核必須支持并開啟 cgroup 和命名空間 (namespace) 功能
2.2 Ubuntu 中安裝 Docker
官方支持版本:
Ubuntu Trusty 14.04 LTS 64 位
Ubuntu Precise 12.04 LTS 64 位
但是并不意味著其他的Ubuntu或者Debian版本就不能安裝Docker,只要有合適的內核和
Docker所必須的支持即可。
2.2.1 檢查前提條件
# 我的環境是 windows 7 旗艦版 64 位, 6GB 內存。
# 安裝了 Vmware 虛擬機,里面安裝了一個 Ubuntu 15.10
[#1#cloudsoar@cloudsoar-virtual-machine ~]$uname -a
Linux cloudsoar-virtual-machine 3.19.0-15-generic #15-Ubuntu SMP Thu Apr 16 23:32:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
可以看到我的內核是 3.19.0 x86_64 的內核,因此不需要升級內核
2 查看Device Mapper
任何 Ubuntu 12.04 或者更高版本都已經安裝了Device Mapper,如下命令可以確認是否安裝
[#2#cloudsoar@cloudsoar-virtual-machine ~]$ls -l /sys/class/misc/device-mapper lrwxrwxrwx 1 root root 0 3月 14 15:26 /sys/class/misc/device-mapper -> ../../devices/virtual/misc/device-mapper
2.2.2 安裝 Docker
首先需要添加 Docker 的 APT 倉庫,添加之前需要確認已經安裝了curl命令
[#3#cloudsoar@cloudsoar-virtual-machine ~]$whereis curl curl: /usr/bin/curl /usr/share/man/man1/curl.1.gz [#4#cloudsoar@cloudsoar-virtual-machine ~]$sudo sh -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
如果沒安裝,使用 apt-get –y install curl 命令安裝
接下來添加 Docker 倉庫的 GPG 密鑰
[#7#cloudsoar@cloudsoar-virtual-machine ~]$curl -s https://get.docker.io/gpg | sudo apt-key add - gpg: 找不到有效的 OpenPGP 數據。
我的虛擬機是今天安裝的新的。這里提示報錯,找不到OpenPGP數據。
網上差找到方法:
[#10#cloudsoar@cloudsoar-virtual-machine ~]$sudo curl -s https://get.docker.io/gpg | sudo apt-key add - gpg: 找不到有效的 OpenPGP 數據。 [#11#cloudsoar@cloudsoar-virtual-machine ~]$gpg --keyserver pgpkeys.mit.edu --recv-key 9AA38DCD55BE302B gpg: 已創建目錄‘/home/cloudsoar/.gnupg’ gpg: 新的配置文件‘/home/cloudsoar/.gnupg/gpg.conf’已建立 gpg: 警告:在‘/home/cloudsoar/.gnupg/gpg.conf’里的選項于此次運行期間未被使用 gpg: 鑰匙環‘/home/cloudsoar/.gnupg/secring.gpg’已建立 gpg: 鑰匙環‘/home/cloudsoar/.gnupg/pubring.gpg’已建立 gpg: 下載密鑰‘55BE302B’,從 hkp 服務器 pgpkeys.mit.edu gpg: /home/cloudsoar/.gnupg/trustdb.gpg:建立了信任度數據庫 gpg: 密鑰 55BE302B:公鑰“Debian Archive Automatic Signing Key (5.0/lenny) <ftpmaster@debian.org>”已導入 gpg: 沒有找到任何絕對信任的密鑰 gpg: 合計被處理的數量:1 gpg: 已導入:1 (RSA: 1) [#12#cloudsoar@cloudsoar-virtual-machine ~]$gpg -a --export 9AA38DCD55BE302B | sudo apt-key add - OK
完成后更新源,sudo apt-get update
此時,我用虛擬機創建了一個快照備份,以便以后有問題需要恢復的時候方便使用。
下面開始安裝Docker
[#14#cloudsoar@cloudsoar-virtual-machine ~]$sudo apt-get install lxc-docker 正在讀取軟件包列表... 完成 正在分析軟件包的依賴關系樹 正在讀取狀態信息... 完成 將會安裝下列額外的軟件包: aufs-tools cgroupfs-mount git git-man liberror-perl lxc-docker-1.9.1 建議安裝的軟件包: git-daemon-run git-daemon-sysvinit git-doc git-el git-email git-gui gitk gitweb git-arch git-cvs git-mediawiki git-svn 下列【新】軟件包將被安裝: aufs-tools cgroupfs-mount git git-man liberror-perl lxc-docker lxc-docker-1.9.1 升級了 0 個軟件包,新安裝了 7 個軟件包,要卸載 0 個軟件包,有 322 個軟件包未被升級。 需要下載 12.1 MB 的軟件包。 解壓縮后會消耗掉 53.8 MB 的額外空間。 您希望繼續執行嗎? [Y/n] y
整個下載過程可能有點慢,我這里是電信100Mb的光纖,下載速度是10kb/s左右
安裝完畢后,使用 docker info 查看是否安裝并運行了
[#15#cloudsoar@cloudsoar-virtual-machine ~]$sudo docker info Containers: 0 Images: 0 Server Version: 1.9.1 Storage Driver: aufs Root Dir: /var/lib/docker/aufs Backing Filesystem: extfs Dirs: 0 Dirperm1 Supported: true Execution Driver: native-0.2 Logging Driver: json-file Kernel Version: 3.19.0-15-generic Operating System: Ubuntu 15.04 CPUs: 1 Total Memory: 2.43 GiB Name: cloudsoar-virtual-machine ID: RL5D:42DH:XMAC:GDQY:VWPJ:3YGM:UHQK:K3QD:USCH:TEGA:32PF:HUNB
2.2.3 Docker 和 UFW
ubuntu中,如果使用 UFW (Uncomplicated Firewall) 還需要啟動 UFW 的數據包轉發
Docker才能正常運行,需要對 /etc/default/uwf 文件做出一點改動
將 DEFAULT_FORWARD_POLICY="DROP" 改為 “ACCEPT”, 保存從新加載即可.
2.9 Docker 守護進程
當 Docker 安裝完畢后, 默認會立即啟動 Docker 守護進程. 監聽 /var/run/docker.sock 這
個 Unix 套接字文件來獲取來自客戶端的 Docker 請求. 如果系統存在名為 docker 的用戶組
的話,Docker 會將此套接字文件的所有者設置為 docker 用戶組,這樣 docker 用戶組所
有用戶都可以直接運行 Docker 不用使用 sudo。
2.9.1 配置 Docker 守護進程
[#19#cloudsoar@cloudsoar-virtual-machine ~]$sudo /usr/bin/docker -d -H tcp://0.0.0.0:2375
這條命令會將Docker守護進程綁定到宿主機上的所有網絡接口。
2.9.2 檢查守護進程是否在運行
[#2#cloudsoar@cloudsoar-virtual-machine ~]$sudo status docker [sudo] password for cloudsoar: status: 無法連接到 Upstart: Failed to connect to socket /com/ubuntu/upstart: 拒絕連接
我這里報錯。
今天暫時還未解決,有待進一步查找資料。