Linux安裝Docker的二種方法
安裝docer容器
一鍵安裝指令:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
報錯
# Executing docker install script, commit: 4f282167c425347a931ccfd95cc91fab041d414f
+ sh -c 'yum install -y -q yum-utils'
軟體包 yum-utils-1.1.31-54.el7_8.noarch 已安裝并且是最新版本
+ sh -c 'yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo'
File "/usr/bin/yum-config-manager", line 135
except yum.Errors.RepoError, e:
^
SyntaxError: invalid syntax
如何讓編輯器展示行數。在非編輯狀态下,輸入**:set number**,用來展示行數
進入錯誤地方檢視,發現沒有問題,可能是版本最新版本的原因導緻的
遇到這個錯誤是因為我更新了Python到3,但是yum-config-manager這個檔案頭的Python沒有改成Python2,如下:
vim /usr/bin/yum-config-manager
改好後面,再一鍵安裝了
設定開機自啟并啟動docker
systemctl enable docker.service
systemctl start docker.service
測試
docker --version
sudo docker run hello-world
配置鏡像加速
Docker 從 Docker Hub 拉取鏡像,因為是從國外擷取,是以速度較慢
可以通過配置國内鏡像源的方式,從國内擷取鏡像,提高拉取速度。
建立/打開daemon.json檔案
vim /etc/docker/daemon.json
輸入以下下内容并儲存
{
"registry-mirrors": ["http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"]
}
重新加載配置資訊及重新開機 Docker 服務
重新加載某個服務的配置檔案
# 重新加載某個服務的配置檔案
sudo systemctl daemon-reload
# 重新啟動 docker
sudo systemctl restart docker
重新啟動 docker
sudo systemctl restart docker
此時pull鏡像就很快啦
下面用另外一種方式安裝docker,不用一鍵安裝了的方式了
Docker手動安裝
手動安裝Docker分三步:解除安裝、設定倉庫、安裝。
解除安裝Docker(可選)
第一步,解除安裝曆史版本。這一步是可選的,如果之前安裝過舊版本的Docker,可以使用如下指令進行解除安裝:
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
設定源倉庫
第二步,設定倉庫。新主機上首次安裝Docker Engine-Community之前,需要設定Docker倉庫。此後可從倉庫安裝和更新Docker。
在設定倉庫之前,需先按照所需的軟體包。yum-utils提供了yum-config-manager,并且device mapper存儲驅動程式需要device-mapper-persistent-data和lvm2。
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
執行上述指令,安裝完畢即可進行倉庫的設定。使用官方源位址設定指令如下:
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
設定鏡像源倉庫的時候,發現出現報錯
File "/bin/yum-config-manager", line 135 except yum.Errors.RepoError, e:
遇到這個錯誤是因為我更新了Python到3,但是yum-config-manager這個檔案頭的Python沒有改成Python2,如下:
vim /usr/bin/yum-config-manager
執行上述指令,安裝完畢即可進行倉庫的設定。使用官方源位址設定指令如下:u
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
Docker安裝
執行一下指令,安裝最新版本的 Docker Engine-Community 和 containerd。
sudo yum install -y docker-ce docker-ce-cli containerd.io
docker-ce為社群免費版本。稍等片刻,docker即可安裝成功。但安裝完成之後的預設是未啟動的,需要進行啟動操作。
如果不需要docker-ce-cli或containerd.io可直接執行如下指令:
yum install -y docker-ce
至此,完成Docker安裝。
Docker啟動
啟動Docker的指令:
sudo systemctl start docker
通過運作hello-world鏡像來驗證是否正确安裝了Docker Engine-Community。
// 拉取鏡像
sudo docker pull hello-world
// 執行hello-world
sudo docker run hello-world
如果執行之後,控制台顯示如下資訊,則說明Docker安裝和啟動成功:
docker run hello-world
除了啟動Docker,一些其他啟動相關的指令:
守護程序重新開機:systemctl daemon-reload
重新開機Docker服務:systemctl restart docker / service docker restart
關閉Docker服務:docker service docker stop / docker systemctl stop docker
删除Docker
删除安裝包:
yum remove docker-ce
rm -rf /var/lib/docker