Docker Desktop for Linux(DD4L)安装教程
参考自官方文档Install Docker Desktop on Linux和Install Docker Desktop on Ubuntu
本教程所用系统为Ubuntu22.04
对新手来说有个图形化界面还是挺方便的,可以装上跟着学习笔记(二)熟悉Docker,我是练完手之后卸载了Docker Desktop转而装了Docker Engine,因为当时发现DD4L好像不支持容器内运行图形化程序,怎么设置都显示不出来窗口,装了Docker Engine马上就好了
环境准备
安装Docker Desktop for Linux需要:
- CPU支持虚拟化
- 系统支持KVM虚拟化(检查、配置方法参见下方),并且可以访问kvm设备,QEMU版本必须为5.2或更高
- 64位系统且使用systemd初始化
- 桌面环境为Gnome或KDE,对于Gnome需要安装托盘图标插件AppIndicator,插件安装方法参见我的另一篇博客Ubuntu桌面美化教程(GNOME Tweak Tool安装教程)
DD4L以虚拟机的形式运行的原因参见官方文档Why Docker Desktop for Linux runs a VM
检查、配置KVM
安装kvm参见我的博客Ubuntu安装KVM虚拟机
- 运行kvm模块
modprobe kvm
# Intel处理器执行这个
modprobe kvm_intel
# AMD处理器执行这个
modprobe kvm_amd
如果上方的命令执行失败,运行以下指令检查
kvm-ok
- 检查kvm模块是否开启
lsmod | grep kvm
- 查看kvm设备权限并为自己当前的用户授予权限
ls -al /dev/kvm
sudo usermod -aG kvm $USER
- 重启电脑
安装Docker Desktop
- 卸载旧版本
sudo apt remove docker-desktop
若要完全删除,还需要删除配置文件和数据文件以及链接,并清除剩余的systemd服务文件
rm -r $HOME/.docker/desktop
sudo rm /usr/local/bin/com.docker.cli
sudo apt purge docker-desktop
注意:如果安装过技术预览版或beta版的DD4L,需要删除所有由这些包生成的文件,例如
~/.config/systemd/user/docker-desktop.service
~/.local/share/systemd/user/docker-desktop.service
另外,对于非Gnome环境,需要安装gnome-terminal
sudo apt install gnome-terminal
- 设置仓库
sudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
# 如果没有这个文件夹,则需要建立
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- 下载deb安装包
- 安装
sudo apt-get update
# 需要替换为具体的文件名称
sudo apt-get install ./docker-desktop-<version>-<arch>.deb
在安装过程中,若报这种错,忽略即可
N: Download is performed unsandboxed as root, as file '/home/user/Downloads/docker-desktop.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
安装包还会自动执行以下操作
- 在Docker Desktop二进制文件上设置映射特权端口和设置资源限制的功能。
- 向/etc/hosts中添加Kubernetes的DNS
- 创建从/usr/bin/docker到/usr/local/bin/com.docker.cli的链接
启动Docker Desktop
可以直接从应用程序菜单找到Docker Desktop启动
或打开终端,输入
systemctl --user start docker-desktop
- 查看Docker Desktop版本
docker compose version
docker --version
docker version
- 设置开机自启
在图形界面的Settings > General > Start Docker Desktop when you log in设置,或终端输入
systemctl --user enable docker-desktop
- 停止Docker Desktop
点击图形界面的Quit Docker Desktop,或终端输入
systemctl --user stop docker-desktop
升级Docker Desktop
只需要下载新版本,然后执行安装命令即可
# 需要替换为具体的文件名称
sudo apt-get install ./docker-desktop-<version>-<arch>.deb
卸载Docker Desktop
sudo apt remove docker-desktop
若要完全删除,还需要删除配置文件和数据文件以及链接,并清除剩余的systemd服务文件
rm -r $HOME/.docker/desktop
sudo rm /usr/local/bin/com.docker.cli
sudo apt purge docker-desktop
还要删除$HOME/.docker/config.json中的credsStore和currentContext配置
然后执行以下命令(参考官方文档)
sudo apt purge docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd