Google Colab中Ngrok打开Dtale链接报ERR_NGROK_6022如何解决
问题根因
你在本地Windows电脑安装Ngrok、配置authtoken的操作对Google Colab环境完全无效。Colab是谷歌托管的远程云端虚拟机,和你本地运行环境完全隔离,本地路径下的ngrok.yml配置文件不会同步到Colab运行实例中,Ngrok进程在Colab侧启动时无法读取鉴权信息,就会持续触发ERR_NGROK_6022错误。
操作步骤
按顺序在Colab笔记本的代码单元中执行以下操作即可解决:
- 安装所需依赖包
!pip install dtale pyngrok
- 在Colab环境内配置Ngrok鉴权信息,此处使用的authtoken和你本地配置的token值一致,但必须在Colab环境中单独设置,无法复用本地配置
from pyngrok import ngrok # 将双引号内的内容替换为你自己的Ngrok authtoken ngrok.set_auth_token("替换为你的Ngrok authtoken字符串")
- 启动Dtale服务并建立Ngrok公网隧道
import pandas as pd import dtale import dtale.app as dtale_app # 适配Colab运行环境,关闭Dtale默认的本地浏览器唤起逻辑 dtale_app.USE_COLAB = True # 替换为你自己的数据集加载代码,以下为示例 df = pd.read_csv("/content/你的数据集文件.csv") dtale_instance = dtale.show(df, port=40000) # 建立端口映射隧道,Dtale默认使用40000端口 public_tunnel = ngrok.connect(40000) print(f"Dtale可访问公网地址:{public_tunnel.public_url}")
- 点击代码执行后打印出的公网地址,即可正常访问Dtale数据分析界面,不会再触发鉴权错误。
注意:Colab为临时运行环境,每次重启实例/断开连接后,所有安装的依赖、配置都会被清空,需要重新执行上述代码才能再次使用Dtale服务。不要尝试在Colab中调用本地电脑安装的Ngrok客户端,二者网络不互通无法生效。
内容的提问来源于stack exchange,提问作者Saurabh Hase
相关产品推荐
相关产品推荐

