docker删除重装,以及极其重要的/etc/docker/key.json文件

由于Docker Hub速度问题,配置阿里云镜像加速后发现速度反而变慢。误修改了/etc/docker/key.json导致docker daemon无法工作。通过完全卸载并删除相关文件,然后重新安装Docker,最终通过网络找到key.json内容恢复解决启动问题。key.json是TLS连接的密钥,敏感且重要,但删除后会自动生成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先说以下我为何要删除docker的原因吧:
因为我感觉Docker Hub有点慢,就配置了阿里云的镜像加速器,可是按阿里云的官方配置完后我怎么感觉它更慢了,对比昨天配置阿里的maven镜像仓库后快到起飞的速度,我认为是此次配置没有生效。
多次确认新加入的/etc/docker/demon.json文件无误后又多次systemctl了未果,随即我怀疑阿里给出的以下方案中的“修改”的/etc/docker/daemon.json文件原本是否是原本的/etc/docker/daemon.json文件最近变为了该目录下原本唯一存在的那个key.json文件呢。。。。于是我手欠的修改了key.json文件。。。。而且改动之前我并为复制该文件。。。于是麻烦来了。。
docker daemon不工作了,我就知道我改错了,该文件应为docker daemon守护进程的一个重要启动服务文件。
旋即我开始我的重装之路。。。
在这里插入图片描述
在这里插入图片描述

1.完全删除安装的docker安装包

删除所有与docker相关的软件包
$dpkg -l | grep docker
$sudo apt remove --purge docker-ce docker-ce-cli
在这里插入图片描述
注意以上命令只会卸载docker的软件安装包,不会删除docker存储的文件
下面删除Docker存储的文件,如镜像,容器,卷等信息,所有这些文件位于/var/lib/docker目录中,需手动删除。
$sudo rm -rf /var/lib/docker
在这里插入图片描述

检查所有文件是否已经删除干净
在这里插入图片描述

2.重新安装docker

进入Docker17代以后,Docker可分为i两种版本:Docker EE企业版和Docker CE社区版
ubuntu安装Docker CE:https://docs.docker.com/install/linux/docker-ce/ubuntu/
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述很好发生了错误,重装换一个版本也没有办法解决该问题。

在这里插入图片描述那现在唯一的办法就是想办法还原回/etc/docker/key.json文件的内容,我上网找了一下,竟然还真有!!!
最然不知道是否存在不同系统版本兼不兼容的问题我必须得改一下试试。。。
阿门。。。
$sudo gedit /etc/docker/key.json
粘贴了网上找到的文件内容
在这里插入图片描述在这里插入图片描述gedit的那条警告信息可以忽略,改动是可以生效的。
果真docker daemon再次运行了~
阿门。。。

最后附上/etc/docker/key.json的说明:

/etc/docker/key.json 描述信息:

This is the dockerd key for TLS connections. in web format, that docker uses when connecting to other TLS servers like registries. It’s automatically generated by the docker engine on startup, so there’s no risk if deleted. You should treat it as sensitive since TLS connections using an exposed key are not secure.

可是人家描述信息中说即使误删了也没有问题,这意味着只要我重启一下电脑应该就好了吧,毕竟这样Docker Enginre也会随之重启了

<think>好的,我需要帮助用户解决Docker Desktop在WSL更新时失败的问题。首先,我需要回顾用户提供的引用内容,看看有没有相关的解决方案。引用[1]提到了在WSL2中使用daemon.json配置可能导致Docker服务无法重启的问题,建议改用systemd unit文件。引用[2]提到在Ubuntu 24.04中通过移除Docker源来解决问题,而引用[3]是关于安装和更新WSL的步骤。 用户的问题是在更新WSL时Docker Desktop失败。首先,我应该考虑WSL本身的更新是否正确。根据引用[3],确保WSL2功能已启用,并且系统已经更新到最新版本。然后,检查Docker的配置,引用[1]指出使用daemon.json可能会导致问题,所以可能需要调整配置方式。引用[2]的方案是移除Docker源,但可能需要先处理依赖关系或冲突。 接下来,我需要将这些信息整合成步骤。首先确认WSL的安装和更新,然后检查Docker的配置是否正确,尤其是避免使用可能导致问题的daemon.json。如果问题依然存在,可能需要重新安装Docker Desktop或调整APT源。同时,用户提到的错误可能与WSL版本或Docker Desktop的兼容性有关,所以建议升级到支持的版本,比如Ubuntu 24.04,如引用[2]所述。 此外,用户可能在之前的交流中提到过类似问题,所以需要确保步骤连贯,没有遗漏。例如,确保Virtual Machine Platform和WSL功能已启用,更新WSL内核,清理旧的Docker配置,以及正确设置环境变量或服务文件。最后,生成相关问题可以帮助用户进一步排查或了解其他可能的问题。</think>### 分步解决方案 #### 1. 验证WSL基础功能 确保WSL 2功能已正确安装并更新至最新版本: ```bash # 检查WSL版本 wsl --list --verbose # 更新WSL内核 wsl --update # 重启WSL服务 wsl --shutdown ``` 若报错$ \text{No LSB modules} $,需安装LSB核心组件: ```bash sudo apt install lsb-core ``` 引用[2]指出Ubuntu 24.04已修复此问题,建议升级系统[^2]。 #### 2. 修复Docker配置冲突 若使用了$ \text{daemon.json} $配置导致服务无法重启(引用[1]): ```bash # 清理冲突配置 sudo rm /etc/docker/daemon.json # 改用systemd单元文件配置 sudo vim /etc/systemd/system/docker.service.d/override.conf ``` 添加以下内容: ``` [Service] ExecStart= ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375 ``` 重新加载服务配置: ```bash sudo systemctl daemon-reload sudo systemctl restart docker ``` #### 3. 重置Docker源依赖关系 当APT源出现冲突时(引用[2]): ```bash # 移除冲突的Docker源 sudo rm /etc/apt/sources.list.d/docker.list # 清理残留包 sudo apt autoremove docker-ce docker-ce-cli # 重新添加官方源 sudo apt-get install apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" ``` #### 4. 完全重装Docker Desktop 若上述步骤无效,执行深度清理: ```powershell # Windows PowerShell中执行 wsl --unregister docker-desktop wsl --unregister docker-desktop-data # 重新安装Docker Desktop时勾选"Enable WSL 2 backend" ``` ###
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

killingwill

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值