这里做一篇关于wsl2更新到最新版本使用镜像网络,但是docker创建的容器不能被访问的问题(困扰了我一整天)

这篇具有很好参考价值的文章主要介绍了这里做一篇关于wsl2更新到最新版本使用镜像网络,但是docker创建的容器不能被访问的问题(困扰了我一整天)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言:####如有出错还请帮忙指出

在windows2023年9月的一次更新中,wsl2支持了新的网络模式镜像模式,他能够通过localhost地址从wsl2内部连接到windows的127.0.0.1地址

##相当于是和本地主机拥有同一个ip


原wsl2是不支持的,虽说是net网络模式,可访问主机,主机也可访问wsl2,同时也可上网,但是不能被网络访问,如果要做反弹shell这一类的就没有办法,而镜像网络就解决了这个问题。

更新到WSL2 2.0往上的版本

  1. 首先需要有win11 23H2或更高版本的系统
  2. 安装了wsl2先前的版本

如果满足以上要求则可以更新到最新版

  1. 以管理员打开windows命令指示符或者是powershell
  2. 运行命令 wsl --update --pre-release

这里我使用的是docker的命令行版本

wsl 镜像网络,docker,容器,运维,wsl2,镜像网络,网络

更新好了以后不会自动开启镜像网络,需要在“c:\users\用户名\”此路径下创建一个.wslconfig文件,在文件里添加以下参数

[experimental]
networkingMode=mirrored # 开启镜像网络模式
hostAddressLoopback=true # 可以通过ip访问

这里是一些其他的参数,需要可自行修改

wsl 镜像网络,docker,容器,运维,wsl2,镜像网络,网络

做完这些以后就开启了镜像网络模式了,但是这样做了以后就访问不了docker的容器了,原因是docker采用了iptable来转发端口

####需要了解iptable的作用可以去看这篇博文因为要让docker可以访问需要禁用iptable

iptables详解及docker的iptables规则_docker iptables-CSDN博客

最后在/etc/docker/daemon.json(一般默认在这里)文件里添加,没有的话就创建一个daemon.json文件

{
"iptables": false
}

最后docker在创建容器的时候映射端口需要改一下

例如:

wsl 镜像网络,docker,容器,运维,wsl2,镜像网络,网络文章来源地址https://www.toymoban.com/news/detail-852874.html

如果的是docker桌面版

  1. 方法1:
    可以直接升级到最新版,已经修复了可以支持镜像网络
  2. 方法2:
    在.wslconfig里添加 ignoredPorts 来设置你需要访问的应用的端口
    例如:
    ignoredPorts=9999,8888

到了这里,关于这里做一篇关于wsl2更新到最新版本使用镜像网络,但是docker创建的容器不能被访问的问题(困扰了我一整天)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • wsl2更新后,报错0x8007273d解决方案

    产生原因 在wsl2更新后,可能会出现 Error code: Wsl/Service/0x8007273d 时,可能是电脑中存在的代理软件(比如proxifier)与wsl发生冲突导致的。 Proxifer开发人员解释如下: 如果Winsock LSP DLL被加载到其进程中,则wsl.exe将显示此错误。最简单的解决方案是对wsl.exe使用WSCSetApplicationCategory

    2024年02月14日
    浏览(49)
  • 最新版Docker Desktop安装在windows10上会出现的WSL2错误

    有科技的可以去这个帖子看,解决WSL是最新版也无法运行docker的情况 查了很多帖子都是牛头不对马嘴,不说废话直接上解决方案 Docker.Core.HttpBadResponseException: {“message”:“2 errors occurred:nt* provisioning docker WSL distros: running wsl-bootstrap version set in main distro: exit status 1nt* checking

    2024年02月02日
    浏览(74)
  • wsl2(debian)安装python的不同版本例如3.8

    要在Debian上安装 Python 3.8,可以按照以下步骤操作: 1.确保你的 Debian 系统已经更新到最新版本,可以使用以下命令更新: 2.安装 Python 3.8 的依赖项,以及构建 Python 时需要的工具和库: 3.下载 Python 3.8 的源代码包: 4.解压源代码包: 5.进入解压后的目录: 6.配置 Python 的编译

    2024年02月13日
    浏览(50)
  • WSL2使用Nvidia-Docker实现CUDA版本自由切换

    众所周知,深度学习的环境往往非常麻烦,经常不同的项目所依赖的 torch、tensorflow 包对 CUDA 的版本也有不同的要求,Linux 下进行 CUDA 的管理比较麻烦,是一个比较头疼的问题。 随着 WSL2 对物理机显卡的支持,Nvidia-Docker 也提供了对容器显卡的支持。我们可以通过拉取不同的

    2024年02月02日
    浏览(61)
  • WSL2的安装与配置(创建Anaconda虚拟环境、更新软件包、安装PyTorch、VSCode)

    以管理员身份打开 PowerShell(“开始”菜单 “PowerShell” 单击右键 “以管理员身份运行”),然后输入以下命令: 以管理员身份打开 PowerShell 并运行: ❗️重新启动计算机(必须) 下载内核并安装: 适用于 x64 计算机的 WSL2 Linux 内核更新包 打开 PowerShell,然后在安装新的 Linux

    2024年04月15日
    浏览(55)
  • 【2023最新版】Win11: WSL(Ubuntu22.04)使用docker远程容器教程(Windows的Docker Desktop下载安装、迁移到非系统盘、配置国内镜像源、设置 WSL2)

    目录 一、准备工作 1. 安装WSL(适用于 Linux 的 Windows 子系统) 2. docker简介——来源chatGPT 二、Windows安装 Docker Desktop 1. 官网链接 2. 安装过程 3. 迁移到非系统盘 4. 配置国内镜像源 国内镜像 方法1——通过Docker-Desktop配置 方法2——找打daemon.json文件进行配置 三、在适用于 Wind

    2024年02月12日
    浏览(84)
  • 【WSL2】【图形界面】【CUDA驱动】WSL2 Ubuntu+gnome原生图形界面及WSL2显卡CUDA驱动的安装

      没有图形化界面的Ubuntu实在是看着不爽,虽然已经习惯用命令。为了更加方便使用WSL2子系统,还是配置了gnome原生桌面(虽然不是很轻量级,但是舒服啊!),然后因为有深度学习需求,有NVIDIA的显卡顺带配置了一下显卡驱动。   下面看看如何配置WSL2图形界面和显卡

    2024年02月10日
    浏览(61)
  • 【dev on wsl2】wsl2 with vscode简单配置

    1.1 安装方式选择: 安装wsl2一般来说有三种方式: cmd/powershell 命令行安装(建议管理员模式) microsoft store 安装 microsoft 官网安装 ps: win + R调出运行框,输入\\\"winver\\\" 查看 Windows 版本及内部版本号 ① 命令行安装wsl的先决条件是必须运行 Windows 10 版本 2004 及更高版本(内部版本

    2024年02月05日
    浏览(44)
  • 解决WSL2占用内存过多问题(Docker on WSL2: VmmemWSL)

    安装完WSL2后,又安装了Docker,使用了一段时间,发现电脑变卡,进一步查看,发现CPU和内存占用过大,如下图: docker仅仅运行了mysql和zk,在关掉docker后,占用内存仍然很大: 然后关掉wsl后,发现内存下降了。 但是,这种解决方案并不满足我的诉求,我想要的结果是:dock

    2024年02月08日
    浏览(48)
  • SSH连接WSL2踩坑记录与增加端口转换规则,实现外网与WSL2的连接

    1. 在WSL里的操作 1.1 重装 openssh-server 1.2 修改配置信息 打开文件后,可以用搜索修改如下的信息 把上面的都改完好,就重启ssh服务 至止,WSL里的的操作基本上已经完成了 2. ssh连接 2.1 先测试一下本机的终端是否能连接到WSL的ssh 先打开 power shell 或者 cmd 如上图,提示输入密码

    2024年02月15日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包