ubuntu Docker正在运行,Docker桌面显示“Docker桌面已停止...”

d4so4syb  于 2023-01-29  发布在  Docker
关注(0)|答案(4)|浏览(615)

我已经使用以下指南在Ubuntu 20.04 VM上安装了Docker和Docker Desktop:
https://linuxiac.com/how-to-install-docker-desktop-on-ubuntu/
一切都在运行,但我的Docker桌面应用程序似乎无法连接到Docker本身。
service docker status返回:

● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-05-13 14:49:12 PDT; 4 days ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 1086 (dockerd)
      Tasks: 18
     Memory: 73.0M
     CGroup: /system.slice/docker.service
             └─1086 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Warning: some journal files were not opened due to insufficient permissions.

然而,这是我尝试在Docker Desktop中配置东西时得到的,当我点击设置时,我得到一个永久加载微调器。

我所尝试的

1.我用sudo service docker stop / start重新启动了Docker
1.我已经点击了Ubuntu桌面右上角的Docker桌面下拉菜单中的重新启动。
1.我已将用户添加到docker组。
我可以采取什么步骤来调试它?有没有什么明显的地方我遗漏了?
谢谢!

mjqavswn

mjqavswn1#

我在Debian 11和Docker Desktop 4.8.1上也遇到过同样的问题
1.如果您在VM中使用Linux,请验证虚拟化支持。Docker Desktop运行的VM需要KVM支持。
https://docs.docker.com/desktop/linux/install/#kvm-virtualization-support
1.如果您使用的是VMWare,则需要启用CPU计数器。
https://github.com/canonical/multipass/issues/1085
1.验证数量
egrep -c '(svm|vmx)' /proc/cpuinfo
1.你得停止并禁用Docker。

$ sudo service docker stop
$ sudo systemctl disable docker.service
$ sudo systemctl disable docker.socket

然后,重新启动Linux和Docker桌面。
更重要的是,如果你以root用户身份运行docker ps,你就不用使用docker desktop了,你有另外一个容器列表。
1.如果您更改“设置-〉资源-〉高级:磁盘映像位置”,则不能删除默认文件1.8G =〉home/YOUR_USER/.docker/desktop/vms/0/data/Docker.raw
您可以更改路径,但需要将该文件保留在该位置。

重置出厂设置

Docker桌面重启

重新启动计算机后Docker服务状态

完整历史:

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo usermod -aG docker YOUR_USER
sudo apt install gnome-terminal
sudo apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virtinst libvirt-daemon virt-manager -y
sudo usermod -aG kvm YOUR_USER
sudo apt autoremove
sudo apt install ./docker-desktop-4.8.1-amd64.deb
sudo systemctl disable docker.service
sudo systemctl disable docker.socket

测试虚拟机- Ubuntu 20.04

ozxc1zmp

ozxc1zmp2#

我在Windows 22.04虚拟机上遇到了同样的问题,其中Windows 11作为主机,Docker Desktop 4.9.0
如果您使用的是Virtualbox,则需要启用Windows 6.0以上版本上提供的嵌套虚拟化支持。此外,必须指出的是,您需要禁用Hyper-V、虚拟机平台和Windows虚拟机管理程序平台,否则将无法工作。
要在VirtualBox和Windows中启用嵌套VT-X/AMD-V,您需要逐步指导:

1.您需要在底部的搜索区域键入CMD来打开Windows命令行终端。一旦它出现,右键单击它并选择以管理员身份运行。这将以管理员模式打开命令行终端。
1.现在,您需要使用cd "Program Files\Oracle\VirtualBox"命令转到VirtualBox文件夹。该文件夹包含所有VirtualBox可执行组件以及其他需要使用VBoxManage的重要文件。
1.要在VirtualBox中启用嵌套的VT-x/AMD-v,您需要运行VBoxManage modifyvm <vm_name> --nested-hw-virt on syntax. EX。我正在为名为"Ubuntu 22.04"的VM启用它,因此我将使用VBoxManage modifyvm "Ubuntu 22.04" --nested-hw-virt on命令。
您应该测试KVM是否可用,以便在Ubuntu shell

上运行命令kvm-ok
要安装KVM,您需要执行以下操作:
1.在Ubuntu 22.04上安装KVM
接下来,运行下面的命令在Ubuntu 22.04上安装KVM和其他虚拟化包。

$ sudo apt install -y qemu-kvm virt-manager libvirt-daemon-system virtinst libvirt-clients bridge-utils

让我们分解一下我们正在安装的软件包:

  • qemu-kvm:提供硬件仿真的开源仿真器和虚拟化包。
  • 虚拟经理:基于Qt的图形界面,用于通过libvirt守护程序管理虚拟机。
  • libvirt守护程序系统:提供运行libvirt守护程序所需的配置文件的软件包。
  • virtinst:一组用于配置和修改虚拟机的命令行实用程序。
  • libvirt客户端:一组客户端库和API,用于从命令行管理和控制虚拟机和虚拟机管理程序。
  • 桥梁设施:用于创建和管理网桥设备的一组工具。

1.授权用户
只有kvm用户组的成员可以运行虚拟机。键入以下命令将用户添加到kvm组:

$ sudo adduser ‘<username>’ kvm

那你就得停止并禁用Docker

$ sudo service docker stop
$ sudo systemctl disable docker.service
$ sudo systemctl disable docker.socket

之后,您将重新启动并设置Docker Desktop

2uluyalo

2uluyalo3#

Docker需要虚拟化来工作。所以,你可以在BIOS中打开它。这对我很有效

cgfeq70w

cgfeq70w4#

这对我很有效,打开C:\Users\<username>\AppData\Roaming\Docker\settings.json并设置wslEngineEnabled: trueuseWindowsContainers: true

相关问题