一、安裝前准備
1、硬件要求
CentOS 7(64-bit),內核版本不能低於3.10;
CentOS 6.5(64-bit或更新的版本),內核版本為 2.6.32-431 或者更高版本,一般不建議在CentOS 6.x下安裝Docker,因為往往CentOS 6.x往往需要先升級內核版本以達到安裝條件,但是升級內核可能會導致開不了機之類的問題。
2、卸載舊版本
較舊版本的Docker被稱為docker
或docker-engine
。如果已安裝這些,請卸載它們以及相關的依賴項。
$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
二、安裝Docker
1、使用yum安裝
①.安裝所需依賴包
1 sudo yum install -y yum-utils device-mapper-persistent-data lvm2
鑒於國內網絡問題,強烈建議使用國內源!!!
國內源:
1 sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
官方源:
1 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
如果需要測試版本的 Docker CE 請使用以下命令:
1 sudo yum-config-manager --enable docker-ce-test
如果需要每日構建版本的 Docker CE 請使用以下命令:
1 sudo yum-config-manager --enable docker-ce-nightly
②.更新yum緩存並安裝Docker-ce
1 sudo yum makecache fast 2 sudo yum -y install docker-ce
③.啟動Docker-ce
1 sudo systemctl enable docker 2 sudo systemctl start docker
④.建立docker用戶組
默認情況下,docker
命令會使用 Unix socket 與 Docker 引擎通訊。而只有 root
用戶和 docker
組的用戶才可以訪問 Docker 引擎的 Unix socket。出於安全考慮,一般 Linux 系統上不會直接使用 root
用戶。因此,更好地做法是將需要使用 docker
的用戶加入 docker
用戶組。
建立docker組:
1 sudo groupadd docker
將當前用戶添加到docker組中:
1 sudo usermod -aG docker $USER
退出當前終端並重新登錄,進行如下命令測試,若能正常輸出以上信息,則說明安裝成功。
[root@localhost ~]# docker run hello-world Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/
⑤.鏡像加速
如果在使用過程中發現國內網絡拉取 Docker 鏡像十分緩慢,比如出現拉取鏡像Timeout的問題,可以配置 Docker 國內鏡像加速。
例如,對於使用 systemd 的系統,請在 /etc/docker/daemon.json
中寫入如下內容(如果文件不存在請新建該文件)
{ "registry-mirrors": [ "https://dockerhub.azk8s.cn", "https://reg-mirror.qiniu.com" ] } #注意,一定要保證該文件符合 json 規范,否則 Docker 將不能啟動。
重啟docker服務:
1 sudo systemctl daemon-reload 2 sudo systemctl restart docker
查看加速器是否生效:
執行 docker info
,如果從結果中看到了如下內容,說明配置成功。
Registry Mirrors: https://dockerhub.azk8s.cn/ https://reg-mirror.qiniu.com/
2、使用腳本自動安裝
在測試或開發環境中 Docker 官方為了簡化安裝流程,提供了一套便捷的安裝腳本,CentOS 系統上可以使用這套腳本安裝:
1 curl -fsSL get.docker.com -o get-docker.sh 2 sudo sh get-docker.sh --mirror Aliyun
執行這個命令后,腳本就會自動的將一切准備工作做好,並且把 Docker CE 的 edge 版本安裝在系統中。
3、添加內核參數
如果在 CentOS 使用 Docker CE 看到下面的這些警告信息:
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
請添加內核配置參數以啟用這些功能。
1 sudo tee -a /etc/sysctl.conf <<-EOF 2 net.bridge.bridge-nf-call-ip6tables = 1 3 net.bridge.bridge-nf-call-iptables = 1 4 EOF
然后重新加載 sysctl.conf
即可
1 sudo sysctl -p
4、參考文檔:
2019-07-07 17:28:49