Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“我该如何解决?”;“哈希和不匹配”;关于;apt获取并安装docker ce;?_Docker_Ubuntu 18.04_Docker Ce - Fatal编程技术网

“我该如何解决?”;“哈希和不匹配”;关于;apt获取并安装docker ce;?

“我该如何解决?”;“哈希和不匹配”;关于;apt获取并安装docker ce;?,docker,ubuntu-18.04,docker-ce,Docker,Ubuntu 18.04,Docker Ce,我希望你们都好 这是我关于堆栈溢出的第一个问题,所以如果我遗漏了什么,请告诉我,我很乐意更新我的问题 因此,总结一下我的问题,我正试图按照的官方步骤在Ubuntu18.04虚拟机上安装Docker ce,运行命令“sudo apt get install Docker ce Docker ce cli containerd.io”时出现错误“Hash Sum Mismatch” 我已经经历了几次正式步骤,到目前为止,我已经尝试了以下几点: 1) 以下命令,然后是正式安装步骤 apt-get cl

我希望你们都好

这是我关于堆栈溢出的第一个问题,所以如果我遗漏了什么,请告诉我,我很乐意更新我的问题

因此,总结一下我的问题,我正试图按照的官方步骤在Ubuntu18.04虚拟机上安装Docker ce,运行命令“sudo apt get install Docker ce Docker ce cli containerd.io”时出现错误“Hash Sum Mismatch”

我已经经历了几次正式步骤,到目前为止,我已经尝试了以下几点:

1) 以下命令,然后是正式安装步骤

apt-get clean
rm -rf /var/lib/apt/lists/*
apt-get clean
apt-get update
apt-get upgrade
Acquire::http::Pipeline-Depth 0;
Acquire::http::No-Cache true;
Acquire::BrokenProxy    true;
2) 创建一个包含以下行的文件,放置在“/etc/apt/apt.conf.d/99fixbadproxy”,然后执行正式安装步骤

apt-get clean
rm -rf /var/lib/apt/lists/*
apt-get clean
apt-get update
apt-get upgrade
Acquire::http::Pipeline-Depth 0;
Acquire::http::No-Cache true;
Acquire::BrokenProxy    true;
3) 使用以下命令安装其他版本的docker ce

sudo apt-get install docker-ce 5:19.03.8~3-0~ubuntu-bionic
sudo apt-get install docker-ce 5:19.03.6~3-0~ubuntu-bionic
sudo apt-get install docker-ce 5:18.09.9~3-0~ubuntu-bionic
4) 我尝试安装不同的存储库(我认为它们被称为存储库),方法是在下面命令的“stable”之后添加“nightly”或“test”或两者

sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
我想差不多就是这样。我也尝试过其他方法,但不幸的是我不记得了,因为我已经在这个问题上工作了很长一段时间了

不过,我没有尝试新安装的Ubuntu 18.04

如果我的问题遗漏了什么,请告诉我


大家保重

说明和解决方案:快速修复

此问题是由Windows虚拟机监控程序平台引起的。这个问题目前无法解决(据我所知)

不过,一个局部修复方案即将出台。我之所以说“部分”,是因为它涉及到禁用平台(也称为“Hyper-V”),这可能会破坏您安装的其他虚拟化解决方案,因为这是手动启用的。不管怎样,下面是如何禁用它并使VM再次运行的方法

  • 关闭虚拟机

  • 按Windows徽标键+X,然后单击以管理员身份运行命令提示符(powershell)

  • 类型 bcdedit/将虚拟机监控程序启动类型设置为off

  • 当您看到“操作已成功完成”时,请重新启动windows。重新启动后,启动VM并进行更新/升级


  • 对于仍然有问题的人,我通过禁用HyperV(正如大多数人已经建议的那样)成功地使其工作。然而,在我的设置中,使用上述方法禁用HyperV实际上并没有禁用HyperV,因为我的windows机器在CredentialGuard和Secure Boot中都使用HyperV,这两种功能都需要在HyperV实际完全禁用之前禁用

    如果在提升的终端中运行
    systeminfo.exe
    ,则表明检测到系统管理程序。Hyper-V所需的功能将不显示,则HyperV未完全禁用。禁用凭证保护和安全引导,再加上几次重启(在运行了前面提到的禁用HyperV的所有命令之后),为我解决了所有问题

    仅供参考,如果HyperV完全禁用,您应该看到

    Hyper-V Requirements:      VM Monitor Mode Extensions: Yes
                               Virtualization Enabled In Firmware: Yes
                               Second Level Address Translation: Yes
                               Data Execution Prevention Available: Yes
    

    运行
    systeminfo.exe

    时,这里出现了相同的问题,您找到解决方案了吗?不幸的是,我没有找到任何解决方案。我尝试了一个新的安装,效果很好,但我不能在我有问题的机器上重新安装。我不得不使用非官方的镜像,它成功了,下一次只有谷歌docker ubuntu替代镜像对我有效,坦率地说,我很惊讶!windows主机上的特定设置如何影响ubuntu来宾上发生的事情??它的黑色魔法这是VirtualBox 6.1中的一个bug,在6.1.16中得到了解决。参考资料:及