1 深度Deepin系統中的Docker
Ubuntu系統安裝docker時可以通過 $(lsb_release -cs) 命令獲取Ubuntu信息,但是Deepin系統是基於Debian系統製作的,通過此命令獲取不到Deepin版本信息,顯示爲unstable,Docker官方源中並沒有提供這種unstable版本的Docker,因此需要利用其它方法安裝Docker。
2 深度Deepin系統安裝Docker方法
2.1 卸載以前老版本Docker
sudo apt-get remove docker.io docker-engine
2.2 安裝docker-ce與密鑰管理及相關下載工具
sudo apt-get install apt-transport-https ca-certificates curl python-software-properties software-properties-common
注意:主要包括curl命令、add-apt-reposiory工具(利用software-properties-common提供該工具)和密鑰管理工具。
2.3 安裝密鑰
國外Docker網絡速度較慢,可以利用國內源。可選的國內源包括中國科技大學開源鏡像站和清華大學開源軟件鏡像站。
添加軟件源CPG密鑰:
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add -
2.4 查看密鑰是否安裝成功
sudo apt-key fingerprint 0EBFCD88
如果安裝成功,顯示如下信息:
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ 未知 ] Docker Release (CE deb) <[email protected]>
sub rsa4096 2017-02-22 [S]
2.5 添加docker官方倉庫(利用中科大開源鏡像倉庫)
修改可以利用命令或修改相應的文件即可,修改的文件位於:/etc/apt/source.list,命令爲:
sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/debian jessie stable"
其中:jessie爲Debian版本號,這個和Ubuntu系統利用 $(lsb_release -cs)命令設置系統版本號不同,需要手動指定Debian版本號。
查看Deepin系統中Debian版本號可以用查看:
cat /etc/debian_version
根據查看的版本號替換對應的版本名稱即可:
Debian 9("stretch") — 當前的穩定版
Debian 8("jessie") — 被淘汰的穩定版
Debian 7("wheezy") — 被淘汰的穩定版
Debian 6.0("squeeze") — 被淘汰的穩定版
Debian GNU/Linux 5.0("lenny") — 被淘汰的穩定版
Debian GNU/Linux 4.0("etch") — 被淘汰的穩定版
Debian GNU/Linux 3.1("sarge") — 被淘汰的穩定版
Debian GNU/Linux 3.0("woody") — 被淘汰的穩定版
Debian GNU/Linux 2.2("potato") — 被淘汰的穩定版
Debian GNU/Linux 2.1("slink") — 被淘汰的穩定版
Debian GNU/Linux 2.0("hamm") — 被淘汰的穩定版
Deepin15.10對應的Debian版本號爲9,版本代號爲stretch,進行相應的替換即可。
2.6 更新倉庫
sudo apt-get update
2.7 安裝docker-ce
sudo apt-get install docker-ce
安裝完成後,需要修改相應的文件:/lib/systemd/system/docker.service.
把如下位置內容:
ExecStart=/usr/bin/dockerd -H fd://
修改爲:
ExecStart=/usr/bin/dockerd
啓動docker:
systemctl start docker
2.8 查看Docker安裝版本信息
docker version
2.9 驗證Docker是否被正確安裝且能正常使用
sudo docker run hello-world
如果能正常下載且能正常使用,說明Docker正常安裝。
3 禁止Docker自啓動
默認情況下Docker是開機自啓動的,若要取消開機自啓動可通過安裝chkconfig命令管理Deepin自啓動項。
# 安裝chkconfig
sudo apt-get install chkconfig
# 移除自啓
sudo chkconfig --del docker
4 添加非root用戶到docker組
上述命令都是在root權限下進行的操作,如果用其它用戶操作可能會出現錯誤。
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.35/version: dial unix /var/run/docker.sock: connect: permission denied
可以通過添加相應的用戶到docker組中就可以。
查看docker用戶組:
cat /etc/group
注意:用戶信息位於:/etc/passwd,用戶組信息位於:/etc/group。
如果沒有docker用戶組,通過如下命令創建:
sudo groupadd -g docker
將當前用戶添加到docker組:
sudo usermod -a -G docker ${USER}
將當前用戶從docker組中刪除:
sudo gpasswd -a ${USER} docker
設置docker.sock(/var/run文件下)文件普通用戶的可執行權限:
sudo chmod a+rw /var/run/docker.sock
[參考文獻]:
1 http://wiki.deepin.org/wiki/Docker
2 https://www.jianshu.com/p/07e405c01880
3 https://blog.csdn.net/qq_36148847/article/details/79273591