安装部分来自cnblogs,稍作修改,做查询备份用。
Docker简介
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
Deepin 中的 Docker
Deepin 官方的应用仓库已经集成了 docker,但不是类似于 docker-ce 这样的最新版本。由于 Deepin 是基于 debian 的 unstable 版本开发的,通过 $(lsb_release -cs) 获取到的版本信息为 unstable,而 docker 官方源并没支持 debian 的 unstable 版本,因此使用 docker 官方教程是安装不成功的。如果你需要安装 docker-ce,请遵循下面的步骤进行安装:
在Deepin中安装Docker
卸载老版本
1
sudo apt-get remove docker.io docker-engine
安装密钥管理与下载相关的工具
1
2// 密钥管理(add-apt-repository ca-certificates 等)与下载(curl 等)相关的工具
sudo apt-get install apt-transport-https ca-certificates curl python-software-properties software-properties-common此处可能会提示 python-software-properties 未安装成功或其他的问题,最后导致 add-apt-repository 命令无法使用
解决办法:
1
2
3
4sudo apt-get install python-software-properties
sudo apt-get update
sudo apt install software-properties-common
sudo apt-get update下载并安装密钥
鉴于国内网络问题,强烈建议使用国内源,官方源请在注释中查看。
国内源可选用清华大学开源软件镜像站或中科大开源镜像站,示例选用了中科大的。
为了确认所下载软件包的合法性,需要添加软件源的 GPG 密钥。
1
2
3
4
5// 中科大源
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 -查看密钥是否安装成功
1
sudo apt-key fingerprint 0EBFCD88
如果安装成功,会出现如下内容:
1
2
3
4
5pub 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在 source.list 中添加 docker-ce 软件源
1
2
3
4
5
6
7
8
9sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/debian buster stable"
#!!!!报错,则手动添加到 /etc/apt/sources.list中
#// 官方源
#// sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian buster stable"
#// 15.10 会提示 aptsources.distro.NoDistroTemplateException: Error: could not find a distribution template for Deepin/stable
#// 这里我们通过编辑 sudo vim /etc/apt/sources.list 添加一行即可,原因未知
#//deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/debian buster stable官方在 buster 位置使用的是 $(lsb_release -cs),但之前已经解释过,在 deepin 里运行它得到的是 unstable,docker 官方不支持 unstable 版本!因此直接使用官方教程的命令会安装失败。
更改方法:将上述命令中的版本名称 buster,替换成 deepin 基于的 debian 版本对应的代号。查看版本号的命令为:
1
cat /etc/debian_version.
举例:
a). 对于 deepin v20,我操作上面的命令得到 debain 版本是 10.5,debian 10.5 的代号是 buster
b). 对于 deepin 15.9.2 基于 debian 9.0 , debian 9.0 的代号为 stretch,
所以 deepin v20 上完整的添加信息为:
1
sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/debian buster stable"
或者
手动添加到/etc/apt/sources.list
图挂了去cnblog原址看
具体代码:Debian
更新仓库
1
sudo apt-get update
安装 docker-ce
1
sudo apt-get install docker-ce
查看 docker 版本
1
docker --version
让普通用户也可运行 docker
docker 只允许 root 用户执行,为让普通用户也可运行 docker,执行
1
sudo usermod -aG docker username
启动 docker
1
systemctl start docker
验证 docker 是否被正确安装并且能够正常使用
1
sudo docker run hello-world
Docker UI 工具
Docker官方的Desktop现在有Linux版本:Docker Desktop on Linux
但是猜测是网络原因,官方的Desktop一直显示Docker Destop Stopped
。Deepin的应用代理和系统代理都对其不起作用,遂卸载弃用。
换了Portainer
,但是Portainer
只有Personal免费,注意Commercial环境。
Portainer
本身也是Web的管理界面,安装很简单,启用一个镜像即可。
用到的Docker命令:
创建一个卷为其存储数据用:
1 | docker volume create portainer_data |
启动Container:
1 | docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.11.1 |