关于wsl2 安装docker后无法启动的问题

wsl中是不能用systemctl来进行启动服务的,只能用service
但是service启动失败
看了下日志

time="2022-07-27T21:23:46.131907580+08:00" level=info msg="stopping healthcheck following graceful shutdown" module=libcontainerd
failed to start daemon: Error initializing network controller: error obtaining controller instance: unable to add return rule in DOCKER-ISOLATION-STAGE-1 chain:  (iptables failed: iptables --wait -A DOCKER-ISOLATION-STAGE-1 -j RETURN: iptables v1.8.7 (nf_tables):  RULE_APPEND failed (No such file or directory): rule in chain DOCKER-ISOLATION-STAGE-1
 (exit status 4))

说的是iptables的问题,这个之前在github中提到过#1105
解决方法如下:
首先将iptables用iptables-legacy替换

sudo update-alternatives --set iptables /usr/sbin/iptables-legacy

然后,开启ipv4的包转发功能

sudo sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf

最后在powershell中重启wsl

wsl --shutdown

这样再打开wsl之后就能顺利启动了

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用两种方式在WSL2安装Docker。 第一种方式是通过安装WSL2前提条件和安装Docker来完成。首先,你需要安装WSL2的前提条件。然后,你可以按照指南安装Docker。这种方式适用于原生Linux安装Docker的场景。 第二种方式是使用Docker Desktop for Windows。这个方法提供了更简单的安装过程,并且可以直接在Windows桌面上运行Docker。你可以使用Docker Desktop for Windows来安装Docker,而无需事先安装WSL2。 根据你的需求,你可以选择其中一种方式来安装Docker。如果你希望在WSL2上使用Docker,并且愿意处理一些额外的配置问题,那么选择第一种方式是一个不错的选择。如果你更喜欢简单快捷的安装过程,并且希望在Windows桌面上运行Docker,那么选择Docker Desktop for Windows是更好的选择。 请注意,如果你选择原生Linux安装Docker的方式,Docker可能无法实现开机自启和每次WSL启动IP会发生变化。这是因为WSL2的网络配置可能会导致这些问题。 希望这些信息对你有所帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Windows 利用 WSL2 安装 Docker 的2种方式](https://blog.csdn.net/qq_42362605/article/details/124898062)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值