基于Kubernetes的容器云平臺實戰》——2.2 容器生命周期管理">《基于Kubernetes的容器云平臺實戰》——2.2 容器生命周期管理
637
2025-04-02
1.5 Docker安裝
Docker引擎能夠在Linux、MacOS以及Windows 10以上版本下安裝。Docker引擎以客戶端/服務器模式運行在宿主機上,以下操作過程同時安裝了客戶端工具、服務器端程序以及基本文檔。
Docker引擎版本分為兩類:社區版和企業版。其中,只有社區版是開源免費使用的,被稱為Docker-ce。對于Docker企業版這里暫不討論。
1.5.1 手動安裝模式
Docker-ce版本包可以從https://download.docker.com/站點下載,網上還有不少提供鏡像功能的站點,有時從這些鏡像站點下載比從官方站點下載要快,尤其是在企業內部網絡中只能訪問到內部的鏡像站點時,這就變成唯一途徑了。版本包中含有編譯好的服務器端程序和客戶端命令行工具,以及內置的Containerd和RunC等運行時依賴程序(但不含有Linux下用于checkpoint的criu工具)。如果用源碼編譯的話,可使用git克隆源代碼,再用Golang編譯出可執行程序。需要注意的是,Docker-ce的部分版本分支(17.05及以前的)代碼在https://github.com/moby/moby項目中,但是更新的版本分支代碼在https://github.com/docker/docker-ce項目中。編譯過程中會自動下載依賴包對應的源碼,并使用到編譯機上已安裝的Docker引擎,這是因為編譯過程是在一系列容器中進行的。
Docker-ce提供四種版本:stable、edge、test和nightly。從Docker 1.13版本以后,新版本號改成了以發布年份和月份為準,而不再是順序的數字,比如17.09.0、18.03.0等。edge版每月發布,stable版則是每季度才發布一次。test版是在edge版發布之前,以rc1、rc2等形式發布,而nightly版本帶有-dev后綴,相當于下個月的預覽版。目前,從上述官方下載站點只能下載17.03.0之后的版本,在CentOS、Ubuntu等操作系統上通過軟件包管理工具安裝時,可以通過指定版本號的方式從它們自有的倉庫中下載并安裝對應舊版本的軟件包。
Docker-ce版本分為靜態鏈接和動態鏈接兩種。靜態鏈接版本不依賴操作系統庫,但尺寸較大;而動態鏈接版本的可執行程序雖然小一點,但是與操作系統庫相關,這種版本包只能在某種操作系統的具體發行版下安裝。目前對于Windows和MacOS,只能提供靜態鏈接版本。
對Linux同時提供靜態和動態鏈接兩種版本。動態版本支持CentOS、Debian、Fedora、Raspbian和Ubuntu五類發行版。另外,由于Docker引擎要求內核版本在3.10以上,而且內核編譯時需要激活必需的namespace、CGroup、netfilter、veth等特性,還對iptables等工具版本有依賴要求,因此只支持這些發行版的某些版本,比如對CentOS要求是版本7以上,對Ubuntu則要求是14.04版本以上等。如圖1-4所示的表格整理了Docker-ce官方下載站點上提供的不同操作系統的版本情況。
要驗證當前環境是否滿足Docker運行要求,可以下載并執行如下腳本:
# curl https://raw.githubusercontent.com/moby/moby/master/contrib/check-config.sh > check-config.sh
# bash ./check-config.sh
由于在Windows和MacOS下使用Docker的業務場景還不廣泛,因此這里不討論在這兩種操作系統下安裝Docker-ce的過程。
圖1-4 Docker-ce操作系統支持情況
表格中? 代表靜態版本, 代表動態版本。
A = aarch64 E = armel H = armhf P = ppc64le S = s390x X = x86_64 6 = amd64
如果用戶當前Linux發行版本不在上述支持范圍內,可下載靜態編譯版本包(注意URL路徑中版本類型和體系結構標識):https://download.docker.com/linux/static/stable/x86_64/。URL路徑中stable表示版本類型,而x86_64表示該版本支持的體系結構。如果需要其他靜態鏈接版本,只要從對應的URL下載即可。
下載該URL下后綴為tgz的壓縮文件,解壓并復制全部內容到/usr/bin,就可以執行Dockerd守護程序了。不過以這種方式下載安裝的時候不帶有手冊文檔。
# tar xzvf /path/to/
# cp docker/* /usr/bin/
# dockerd &
這時需要手工配置/etc/docker/daemon.json,添加定制的運行參數,或者為Dockerd添加命令行參數。具體執行參數需要參考Docker文檔。
Kubernetes Docker
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。