Ubuntu 24.04安装Docker Desktop后无法启动,求解决方法
问题:Ubuntu 24.04无法启动Docker Desktop以部署Mealie
已完成操作
- 添加Docker Apt仓库并配置可读GPG密钥:
$ cat /etc/apt/sources.list.d/docker.list deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble stable $ ls -Alh /etc/apt/keyrings/docker.asc -rw-r--r-- 1 root root 3.8K Jan 9 08:38 /etc/apt/keyrings/docker.asc - 执行
sudo apt update成功连接仓库无报错 - 下载Docker Desktop DEB包并完成安装:
$ ls -Alh ~/docker_desktop/ total 357M -rw-rw-r-- 1 user user 357M Jan 9 08:46 docker-desktop-amd64.deb $ sudo apt install ./docker-desktop-amd64.deb - 安装过程提示
Note, selecting 'docker-desktop' instead of './docker-desktop-amd64.deb',结尾出现官方说明的预期权限错误,已忽略 - 安装文件已正常部署至
/opt/docker-desktop/目录
遇到的核心问题
- 执行
systemctl --user start docker-desktop无输出,使用sudo执行报错:$ sudo systemctl --user start docker-desktop Failed to connect to bus: No medium found - 未出现Docker服务协议确认窗口,无法确认启动状态
- 执行
docker compose和docker run hello-world均提示无法连接Docker daemon:$ sudo docker compose up -d unable to get image 'ghcr.io/mealie-recipes/mealie:v2.4.1': Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? $ sudo docker run hello-world docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?. - 检查Docker状态发现daemon未运行,且
docker.service和docker-desktop.service不存在:$ systemctl is-active docker inactive $ systemctl status docker Unit docker.service could not be found. $ sudo systemctl start docker Failed to start docker.service: Unit docker.service not found. $ sudo systemctl start docker-desktop Failed to start docker-desktop.service: Unit docker-desktop.service not found.
解决步骤
1. 修正用户权限与启动方式
Docker Desktop是用户级服务,不能用sudo启动。先确保当前用户加入docker组:
$ sudo usermod -aG docker $USER
注销并重新登录后,验证用户组:
$ groups
确认输出包含docker组。
2. 启动Docker Desktop服务
执行用户级启动命令并设置开机自启:
$ systemctl --user enable --now docker-desktop
检查服务状态:
$ systemctl --user status docker-desktop
正常状态应显示active (running)。如果是无桌面环境的服务器,直接运行启动程序:
$ /opt/docker-desktop/bin/docker-desktop
3. 切换Docker CLI上下文
Docker Desktop启动后会创建用户级上下文,需要切换到该上下文以让CLI连接到Desktop daemon:
$ docker context use desktop-linux
验证上下文切换结果:
$ docker context ls
确认desktop-linux标记为*。
4. 验证Docker功能
执行hello-world测试确认服务正常:
$ docker run hello-world
如果成功输出欢迎信息,即可执行Mealie部署命令:
$ docker compose up -d
5. 修复缺失的systemd单元(可选)
如果docker-desktop.service仍无法识别,重新安装Docker Desktop以确保post-install脚本正确执行:
$ sudo apt remove --purge docker-desktop $ sudo rm -rf /opt/docker-desktop $ sudo apt install ./docker-desktop-amd64.deb
重新安装后重复步骤2-4。
内容的提问来源于stack exchange,提问作者Darien Marks
相关产品推荐
相关产品推荐

