藏茗山學院
安全可靠、性能穩定、追求極致的用戶體驗
CentOS在線安裝docker與CentOS手動安裝docker及解決方法
本文檔所用CentOS版本為CentOS 7.0, 安裝過程參考自官方文檔//docs.docker.com/engine/install/centos/
在線安裝
1. 卸載舊版本
較舊的Docker版本稱為docker或docker-engine。如果已安裝這些程序,請卸載它們以及相關的依賴項,命令如下:
sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
2. 配置docker yum倉庫
命令如下:
sudo yum install -y yum-utilssudo yum-config-manager
--add-repo
//download.docker.com/linux/centos/docker-ce.repo
3. 安裝DOCKER引擎
安裝最新版本的Docker
命令如下:
sudo yum install docker-ce docker-ce-cli containerd.io
安裝特定版本的Docker
a.列出并排序您存儲庫中可用的版本,命令如下:
yum list docker-ce --showduplicates | sort -r
b.安裝指定版本,命令如下:
sudo yum install docker-ce-<版本號> docker-ce-cli-<版本號> containerd.io
PS: 此時Docker已安裝但尚未啟動。用戶組docker已創建,但沒有用戶添加到該組。
4. 啟動docker
命令如下:
sudo systemctl start docker
5. 通過運行hello-world 鏡像來驗證是否正確安裝了Docker Engine
命令如下:
sudo docker run hello-world
手動安裝
1. 卸載舊版本
較舊的Docker版本稱為docker或docker-engine。如果已安裝這些程序,請卸載它們以及相關的依賴項,命令如下:
sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
2. 下載Docker安裝包
下載地址: //download.docker.com/linux/centos/7/x86_64/stable/Packages/
選擇要安裝的版本的.rpm文件下載
3. 安裝Docker
后面的文件路徑換成實際的你下載的rpm包的路徑,命令如下:
sudo yum install /path/to/package.rpm
PS: 此時Docker已安裝但尚未啟動。該docker組已創建,但沒有用戶添加到該組。
4. 啟動Docker
命令如下:
sudo systemctl start docker
5. 通過運行hello-world 鏡像來驗證是否正確安裝了Docker Engine
命令如下:
sudo docker run hello-world
非root用戶啟動docker
Docker守護程序綁定到Unix套接字而不是TCP端口。默認情況下,Unix套接字由root用戶擁有,其他用戶只能使用sudo來訪問它。Docker守護程序始終以root用戶身份運行。
如果不想在運行docker命令時加sudo前綴,可以創建一個名為docker的用戶組并將用戶加入到該組。Docker守護程序啟動時,它將創建一個可由該docker組成員訪問的Unix套接字。
1. 創建docker用戶組
命令如下:
sudo groupadd docker
2.將您的用戶添加到該docker組($USER表示當前用戶, 也可指定其他用戶)
命令如下:
sudo usermod -aG docker $USER
3.激活對組的更改
如果在虛擬機上進行測試,則可能需要重新啟動虛擬機以使更改生效,命令如下:
newgrp docker
4.驗證普通用戶是否可以不帶sudo前綴運行docker
命令如下:
docker run hello-world
如果在將用戶添加到組之前就運行過Docker CLI命令, 就可能會出現以下錯誤:
解決方法一:
刪除~/.docker/目錄(會自動重新創建目錄,但是所有自定義設置都會丟失)
解決方法二:
運行以下命令
sudo chown "$USER":"$USER" /home/"$USER"/.docker -Rsudo chmod g+rwx "$HOME/.docker" -R