我在 WSL2 Ubuntu 上运行 Jupyter Lab,并在 Win10 PC 上的 Firefox 中访问它。它们在同一台机器上运行,因此不应该涉及“网络”。我正在运行它jupyter lab --no-browser
。服务器在终端中启动得很好:
[I 11:17:40.843 LabApp] [jupyter_nbextensions_configurator] enabled 0.4.1
[I 11:17:40.885 LabApp] JupyterLab extension loaded from /home/muthur/anaconda3/lib/python3.8/site-packages/jupyterlab
[I 11:17:40.886 LabApp] JupyterLab application directory is /home/muthur/anaconda3/share/jupyter/lab
[I 11:17:40.888 LabApp] Serving notebooks from local directory: /home/muthur
[I 11:17:40.888 LabApp] Jupyter Notebook 6.2.0 is running at:
[I 11:17:40.888 LabApp] http://localhost:8888/?token=...
[I 11:17:40.888 LabApp] or http://127.0.0.1:8888/?token=...
[I 11:17:40.888 LabApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
但是当我在浏览器中启动它时,我首先收到“服务器连接错误:无法建立与 Jupyter 服务器的连接。JupyterLab 将继续尝试重新连接。请检查您的网络连接或 Jupyter 服务器配置。”,在 F12 中控制台是由于Uncaught (in promise) TypeError: NetworkError when attempting to fetch resource.
重新加载选项卡或在新选项卡中打开它会出现 Firefox“连接失败”错误页面,表示无法建立与127.0.0.1:8888
过去 2-3 个月我一直使用此设置,没有出现任何问题。知道为什么现在会出现这种情况以及如何解决吗?
它们在同一台机器上运行,因此不应该涉及“网络”。
不管你相信与否,Windows 和 WSL2 会话之间的通信肯定涉及到网络。 WSL1 在主机 Windows 网络“上”运行(伪桥接),而 WSL2 在具有自己的虚拟 NIC 的单独 VM 中运行。该 NIC 已进行 NAT 处理behind默认为 Windows 界面。
这意味着需要端口转发,以便当您访问端口时8888
on localhost
(127.0.0.1) 在 Windows 浏览器中,它被转发到 WSL2 实例的虚拟网卡。
默认情况下 https://learn.microsoft.com/en-us/windows/wsl/wsl-config#wsl-2-settings,这会自动发生(参见localhostForwarding
该页面上的设置)。然而,有时却并非如此。通常,当 Windows 休眠或关闭并启用“快速重新启动”(这也会执行“迷你休眠”)时,它会“中断”。请注意,快速重启是 Windows 中的默认设置,因此很容易遇到此问题。
解决方案相当简单,假设这是您遇到的问题:
- 退出任何正在运行的 WSL 实例
-
wsl --shutdown
在 PowerShell 或 CMD 提示符下
- 重新启动您的 WSL 实例
希望一切都会顺利进行,直到你下一次冬眠。
如果这不起作用,请尝试更多信息和其他建议这个答案 https://stackoverflow.com/a/63455770/11810933.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)