我正在尝试在我的 ubuntu-22.04 上运行 docker 桌面,但是当我在终端中运行任何 docker 命令时,它会出现以下错误:
exec: "com.docker.cli": executable file not found in $PATH
Current PATH : /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/
我注意到我的 com.docker.cli 文件在文件夹中显示为红色:usr/local/bin 查看我的图像:
我还注意到 /usr/bin 中没有 docker 目录
答案1
命令
ls -ld /usr/local/bin/com.docker.cli
可能会显示该文件/usr/local/bin/com.docker.cli
是无效的符号链接。这意味着它引用的可执行文件不再存在。它可能已被移动或删除。
如果可执行文件只是被移动了,你可以通过删除符号链接/usr/local/bin/com.docker.cli
并重新创建它来修复这个问题,这样它就指向了正确的可执行文件,就像这样
ln -s `/<true/path/to/executable>` /usr/local/bin/com.docker.cli
否则,您的docker安装可能已经受到更严重的损坏,然后您可能需要重新安装该应用程序。
答案2
收到同样的错误后,我使用了以下命令。
sudo apt --fix-broken install
现在工作正常
此命令通常用于修复所有损坏的软件包或从官方仓库重新安装
答案3
在 Debian 上,手动二进制安装后我遇到了完全相同的错误。
即使我的二进制文件位于/usr/bin
已经在 PATH 中的文件中,它仍然无法正常工作。/usr/bin/docker
但是运行正常。
事实证明我同时拥有/usr/bin/docker
和中的二进制文件/usr/local/bin/docker
。
我必须在这两个路径之间建立一个符号链接,而不是两个独立的二进制文件。
所以我删除了该/usr/local/bin/docker
文件,并添加了一个符号链接/usr/bin/docker
ln -s /usr/bin/docker /usr/local/bin/docker