在一次在线培训课程中,讲师提到他有“安装了 Docker Desktop 的 Ubuntu 虚拟机”;因此,我尝试按照官方网站上的说明在Windows 10物理主机上安装相同的内容。
但是,
apt-get install
不起作用,错误消息是docker-desktop : Depends: docker-ce-cli but it is not installable
。我想知道我是否在这里错过了什么。
我们非常感谢任何提示或建议。如果您需要更多详细信息,请告诉我。
截图:
root@dockeru:/home/work/Downloads# ls
docker-desktop-4.8.1-amd64.deb
root@dockeru:/home/work/Downloads# apt-get install ./docker-desktop-4.8.1-amd64.deb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'docker-desktop' instead of './docker-desktop-4.8.1-amd64.deb'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help resolve the situation:
The following packages have unmet dependencies:
docker-desktop : Depends: docker-ce-cli but it is not installable
E: Unable to correct problems, you have held broken packages.
除非您确实需要,否则不需要将 Docker Engine 与 Docker Desktop 一起安装。 Docker 的文档明确指出:
Linux 版 Docker Desktop 和 Docker Engine 可以并行安装在同一台计算机上。 使用 Docker Desktop 的专用存储位置可以防止它干扰同一台计算机上的 Docker Engine 安装。 虽然可以同时运行 Docker Desktop 和 Docker Engine,但在某些情况下同时运行两者可能会导致问题。
您面临的问题是由于您的系统上缺少 Docker 存储库,您可以按照 Docker Engine 文档的部分内容解决该问题,如下所示:
sudo apt install -y 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
sudo apt update -y
之后就可以继续安装Docker Desktop了:
sudo apt install ./docker-desktop-<version>-<arch>.deb
附注如果您在安装过程结束时看到以下错误,请不要惊慌。只要忽略它就可以了;)
Download is performed unsandboxed as root as file docker-desktop-
<version>-<arch>.deb couldn't be accessed by user '_apt'. -
pkgAcquire::Run (13: Permission denied)
更新:值得庆幸的是,Docker 团队相应地修改了他们的文档。
首先需要安装docker引擎。 官方 Docker 引擎链接 然后您可以按照 docker 桌面指南进行操作。我认为这是因为如果没有使用 docker 引擎安装的一些依赖项,docker 桌面就无法安装。
为了解决这个问题,我按此顺序录制了以下命令
sudo apt install -y 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
sudo apt update -y
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
最后我做到了
sudo docker run hello-world
你会看到这个:
Hello from Docker!
This message shows that your installation appears to be working correctly.
希望对您有帮助 我完成了该过程并双击文件 docker-desktop-4.15.0-amd64.deb 来运行该过程 最好的问候
我正在使用 Ubuntu(特别是 Zorin OS)并在安装时遇到了同样的问题。但是,我通过遵循 Install Docker Engine 文档 的安装存储库部分解决了我的问题,然后运行
sudo apt-get install ./docker-desktop-<version>-<arch>.deb
再次安装 .deb 文件。它起作用了。
这是如何运作的? 因为 apt 会尝试自动安装任何未安装/未满足的必需依赖项。在这种情况下,它尝试这样做,但是,它不知道
docker-ce-cli
,因为它不在默认的 apt 存储库中,也不在它当前使用的任何其他 apt 存储库中。但是,通过按照安装 Docker 引擎文档中的步骤成功将 Docker 存储库添加到 apt,它现在可以看到并知道 docker-ce-cli
包。当您在 docker 桌面 deb 软件包上运行 sudo apt install
时,它现在会自动安装 docker-ce-cli
以及其他所需的依赖项。
谢谢你。我也遇到了同样的问题,不得不寻找解决方案。 Mac OSX 和 Windows 安装程序都作为一个软件包提供,但 Linux 确实需要先安装 Docker 引擎。
Linux 的 Docker 桌面应该检测到引擎未安装,并为您提供比
更有用的错误docker-desktop : Depends: docker-ce-cli but it is not installable
但如果真的这么做了,那么 Linux 社区如何将那些不法之徒拒之门外呢?是的。 Linux 不适合胆小者或害怕命令行的人。
对于那些使用基于 UBUNTU 的发行版的人
按照文档的步骤操作:https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
"$VERSION_CODENAME"
更改为"$UBUNTU_CODENAME"
。sudo apt-get update
。如果您仔细阅读此链接: https://docs.docker.com/desktop/install/ubuntu/#install-docker-desktop 它说你必须先添加 apt 存储库。我遇到了同样的问题,并通过添加以下内容解决了:https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository
安装 Docker CE
sudo apt-get update && apt-get install -y docker.io
验证docker安装
docker -v