关于 Deepin 中的 Docker
Deepin 官方的应用仓库已经集成了 docker,但不是类似于 docker-ce 这样的最新版本。由于 Deepin 是基于 debian 的 unstable 版本开发的,通过 $(lsb_release -cs) 获取到的版本信息为 n/a,导致添加 docker 仓库会报错;
在 Deepin 中安装 Docker 最新版的方法
如果以前安装过老版本,要确保先卸载以前版本
sudo apt-get remove docker.io docker-engine docker
安装密钥管理与下载相关的工具
鉴于国内网络问题,强烈建议使用国内源,官方源请在注释中查看。
国内源可选用清华大学开源软件镜像站或中科大开源镜像站,示例选用了中科大的。
为了确认所下载软件包的合法性,需要添加软件源的 GPG 密钥。
$ sudo apt-get update
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
下载并安装密钥
$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add - // 官方源,能否成功可能需要看运气。 // curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -查看密钥是否安装成功 ```shell $ sudo apt-key fingerprint 0EBFCD88
pub 4096R/0EBFCD88 2017-02-22 Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb) docker@docker.com
sub 4096R/F273FCD8 2017-02-22
5. 在 source.list 中添加 docker-ce 软件源
:::info
- **Note:** 官方在 buster 位置使用的是 $(lsb_release -cs),但之前已经解释过,在 deepin 里运行它得到的是 unstable,docker 官方不支持 unstable 版本!因此直接使用官方教程的命令会安装失败。
- **更改方法:**将上述命令中的版本名称 buster,替换成 deepin 基于的 debian 版本对应的代号。查看版本号的命令为:`cat /etc/debian_version`
- 对于 Deepin 20,使用的是 Debian 10 (Buster),可以去查一下:[debain 版本](https://www.debian.org/releases/index.zh-cn.html)
:::
```shell
$ echo \
"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/debian buster stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 官方源
# $ echo \
# "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
# $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- 更新仓库并安装 ```shell $ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
7. 启动 Docker
```shell
$ sudo systemctl enable docker
$ sudo systemctl start docker
- 让普通用户也可运行 docker
$ sudo usermod -aG docker $USER # 然后注销用户重新登录即可
更换国内的 docker 加速器
可以通过修改 daemon 配置文件 /etc/docker/daemon.json 来使用加速器,并且可以配置多个加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://liucwhk8.mirror.aliyuncs.com","https://hub-mirror.c.163.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
禁止开机自启
默认情况下 docker 是开机自启的,如果我们想禁用开机自启,可以通过安装 chkconfig 命令来管理 Deepin 自启项:
# 安装chkconfig
sudo apt-get install chkconfig
# 移除自启
sudo chkconfig --del docker
