Deepin有点算是非常用系统,Docker官方没有出deepin的安装步骤,这里简单记录一下
Deepin安装docker
首先谈谈Deepin系统的基础
深度官方deepin已经集成了docker,不过要想使用最新版本的docker,那可需要费点功夫了。要想使用最新版可以参考官网 debian 安装教程安装,不过由于深度15.4基于 sid 版本开发,通过 $(lsb_release -cs) 获取的版本信息为 unstable,而docker官方源并没提供 sid 这种unstable版本的docker,所以使用官方教程是安装不成功的。
在Deepin中安装最新Docker
1.如果以前安装过老版本,请先卸载以前版本
sudo apt-get remove docker docker-engine
2.安装docker-ce与密钥管理与下载相关依赖工具
sudo apt-get install apt-transport-https ca-certificates curl python-software-properties software-properties-common -y
3.下载并安装密钥
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
4.查看密钥是否安装成功
sudo apt-key fingerprint 0EBFCD88
如果安装成功,会出现以下内容:
root@PC:~$ sudo apt-key fingerprint 0EBFCD88
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb)
sub rsa4096 2017-02-22 [S]
5.添加docker官方仓库
首先查看自己Deepin系统的版本
lsb_release -cs #显示结果为unstable 很奇怪,docker官方没有提供sid版本的docker
cat /etc/debian_version #查看自己系统所属版本,选择对应系统代号
#这里需要修改系统代号如jessie wheezy
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian jessie stable"
Debian
系统代号 | 版本 |
---|---|
squeeze | 6.x |
wheezy | 7.x |
jessie | 8.x |
如笔者系统
root@-PC:~$ cat /etc/debian_version
8.0
故笔者的系统代号为jessie
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian jessie stable"
6 .更新仓库
sudo apt-get update -y
7.安装docker-ce
sudo apt-get install docker-ce -y
8.查看安装好的docker版本
docker version
9.换镜像源
可以使用docker-cn提供的镜像源
也可以使用ustc/daocloud/aliyun的镜像源
之前写过换源的文章可以在博客中进行查询
10.免sudo 使用docker
为了避免次次都使用sudo对docker daemon进行访问 这里设置为免sudo访问docker模式
sudo groupadd docker #创建docker组
sudo gpasswd -a ${USER} docker #把当前用户加入docker组
sudo systemctl restart docker #重启daemon
newgrp - docker #可切换成新group回话进行验证
原因分析
因为 /var/run/docker.sock 所属 docker 组具有 setuid 权限
root@-PC:~$ sudo ls -l /var/run/docker.sock
srw-rw---- 1 root docker 0 Dec 30 20:25 /var/run/docker.sock
安装结果
root@-PC:~$ docker version
Client:
Version: 17.12.0-ce
API version: 1.35
Go version: go1.9.2
Git commit: c97c6d6
Built: Wed Dec 27 20:12:56 2017
OS/Arch: linux/amd64
Server:
Engine:
Version: 17.12.0-ce
API version: 1.35 (minimum version 1.12)
Go version: go1.9.2
Git commit: c97c6d6
Built: Wed Dec 27 20:11:32 2017
OS/Arch: linux/amd64
Experimental: false