這一小節我們介紹一下 Docker 安裝與運行,在開始之后,我們需要明白的時候,Docker 有兩個版本:一個是商業版收費的:Enterprice Edition,一般簡稱 Docker EE;另一個是社區版,也就是 Community Edition,一般簡稱為 Docker CE。
這里安裝我們會介紹在 Linux 平臺、Mac 平臺、Windows 平臺的安裝。重點會介紹一下在 Linux 平臺的安裝,Linux 平臺又會細分兩個:Centos 和 Ubuntu。
1. Linux 安裝
Linux 下安裝 Docker 我們將主要介紹 Centos 和 Ubuntu 系統
Centos
我們這里的示例 OS 版本是 Centos 7.4,使用命令 lsb_release -a
可以看到系統版本。
# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.4.1708 (Core)
Release: 7.4.1708
Codename: Core
在 Centos 下面安裝我們可以采用兩種安裝方式,一種是 yum 安裝,一種是下載 rpm 包進行安裝。
yum 安裝
yum 安裝需要確保 yum 源里面含有 Docker 軟件包,國內的話推薦使用阿里云的 yum 源。如果要查看自己的系統的 yum 源,可以在目錄 /etc/yum.repos.d/
下查看,下面是我自己的阿里云的 ecs 虛擬機 yum 源文件,包含兩個部分:CentOS-Base.repo
和 epel.repo
。內容分別如下
[base]
name=CentOS-$releasever
enabled=1
failovermethod=priority
baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7
[updates]
name=CentOS-$releasever
enabled=1
failovermethod=priority
baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7
[extras]
name=CentOS-$releasever
enabled=1
failovermethod=priority
baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
enabled=1
failovermethod=priority
baseurl=http://mirrors.cloud.aliyuncs.com/epel/7/$basearch
gpgcheck=0
gpgkey=http://mirrors.cloud.aliyuncs.com/epel/RPM-GPG-KEY-EPEL-7
使用阿里云的 yum 源安裝 Docker 非常簡單,強烈建議各位同學配置阿里云的 yum 源。安裝使用下面一條命令即可:
yum install docker
執行完之后,可以通過如下命令查看 Docker 的版本:
# docker version
Client:
Version: 1.13.1
API version: 1.26
Package version:
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
這個輸出表示 Docker 的版本是 1.13.1。細心的同學會注意到最后一句提示,是因為 Docker Daemon 進程還沒有啟動,啟動命令如下:
service docker start
或者:
systemctl start docker.service
啟動完之后,我們就可以通過 docker 的命令來查看 Docker 是不是運行正常了,比如使用 docker images
查看本地所有的鏡像。如下輸出是正常的。
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
下載 rpm 包安裝
哪里下載呢?當然是 dockerhub,截圖如下圖所示:
其中 containerd 和 docker-ce-cli 是 docker-ce 安裝的前置條件,也就是要安裝 docker-ce,需要先安裝 containerd 和 docker-ce-cli。版本之間保證 docker-ce 和 docker-ce-cli 的版本一致,containerd 的版本盡可能新就 ok。下載到本地之后,使用 yum 安裝。
yum install <pkg_name>.rpm
我這里選的版本是:
- docker-ce-cli-19.03.5-3.el7.x86_64.rpm
- containerd.io-1.2.6-3.3.el7.x86_64.rpm
- docker-ce-19.03.5-3.el7.x86_64.rpm
按上面的順序安裝之后啟動 docker
systemctl start docker.service
我們看一下 docker version:
# docker version
Client: Docker Engine - Community
Version: 19.03.5
API version: 1.40
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:25:41 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.5
API version: 1.40 (minimum version 1.12)
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:24:18 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.2.6
GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
runc:
Version: 1.0.0-rc8
GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f
docker-init:
Version: 0.18.0
GitCommit: fec3683
這個要比阿里云的 Yum 源中的 Docker 版本高很多,如果需要新的版本的 feature 的話,建議自己下載對應的 rpm 包進行安裝。
Ubuntu
我們知道 ubuntu 的包管理是通過 apt-get 來做的,但是默認的 apt-get 里面是沒有包含 docker 的軟件包的,我們需要將 Docker 的官方倉庫加進來。
apt-get 安裝
更新 ubuntu 的 apt 源索引
sudo apt-get update
安裝包允許apt通過HTTPS使用倉庫
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
添加Docker官方GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
設置Docker穩定版倉庫
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
添加倉庫后,更新apt源索引
sudo apt-get update
安裝 Docker CE,不如過不輸入 Version,則默認安裝最新版本
sudo apt-get install docker-ce=<VERSION>
啟動 Docker
systemctl start docker.service
使用這種方式安裝的最大劣勢就是 Docker 官方倉庫和我們國內的機器網速捉急,相比之下將 deb 包下載到本地再進行安裝往往是一種更好的安裝方式。
deb 軟件包安裝
軟件包下載地址為:https://download.docker.com/linux/ubuntu/dists/,這個地方先選擇自己的 ubuntu 版本,比如我們選擇 artful,則軟件包的完整路徑為:https://download.docker.com/linux/ubuntu/dists/artful/pool/stable/amd64/
然后我們選擇一個 docker-ce 版本,直接本地安裝即可。
sudo dpkg -i <deb pkg name>
2. Mac 安裝
Mac 版本的安裝頁面地址為:https://docs.docker.com/v17.09/docker-for-mac/install/#download-docker-for-mac 。Docker 針對 Mac 平臺提供了兩個不同的版本:
- stable: 穩定版
- edge: 最新的 release,穩定性不保障
然后我們通過上圖中 “Get Docker for Mac” 鏈接獲取 dmg 安裝文件。
啟動 Docker
啟動,找到你的 Application 中的下面這個 Docker 圖標,點擊運行即可。
啟動之后,我們可以在導航欄上發現這么一個小圖標,就表示 Docker 運行成功了。
3. Windows 安裝
Windows 安裝鏈接:https://docs.docker.com/v17.09/docker-for-windows/install/#download-docker-for-windows ,和 Mac 版類似,提供了 stable 和 edge 版本。我們只需要下載對應的版本的可執行文件進行安裝即可。啟動也是類似的,這里就不再贅述了。