You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Colab中运行flask-ngrok?出现ConnectionRefusedError错误

解决Google Colab中Flask-ngrok连接拒绝(ConnectionRefusedError)的问题

问题场景

在Google Colab单元格中执行包含Flask-ngrok的代码,已完成ngrok账号注册并配置authtoken,但运行后未生成可访问的ngrok链接,反而抛出ConnectionRefusedError: [Errno 111] Connection refused错误。

解决方法

以下是几个可行的排查和修复步骤:

  • 修正ngrok认证命令格式
    原代码中authtoken添加了单引号,可能导致认证失败。去掉引号,直接执行:

    !ngrok authtoken YOUR_ACTUAL_TOKEN
    
  • 升级pyngrok到最新稳定版
    旧版本(如4.1.1)可能与当前Colab环境不兼容,执行以下命令更新依赖:

    !pip uninstall pyngrok flask-ngrok -y
    !pip install pyngrok flask-ngrok
    
  • 修改Flask启动参数
    指定Flask监听所有网络接口并明确端口,避免本地连接限制:
    将原代码中的app.run()替换为:

    app.run(host='0.0.0.0', port=5000)
    
  • 手动启动ngrok隧道(绕过flask-ngrok)
    如果flask-ngrok仍无法正常工作,可拆分Flask运行和ngrok隧道启动步骤:

    1. 先在后台启动Flask服务:
      from flask import Flask
      import threading
      
      app = Flask(__name__)
      
      @app.route('/')
      def home():
          return "Hello World"
      
      def run_flask():
          app.run(host='0.0.0.0', port=5000, debug=False)
      
      threading.Thread(target=run_flask).start()
      
    2. 再启动ngrok隧道映射端口:
      !ngrok http 5000
      
  • 重启Colab运行时
    有时Colab的运行时环境会出现缓存或进程冲突,通过菜单栏「运行时」→「重启运行时」重置环境后,重新执行所有代码。

  • 验证ngrok基础功能
    单独执行!ngrok version,若无法输出版本信息,说明ngrok安装异常,重新执行卸载安装命令:

    !pip uninstall pyngrok -y
    !pip install pyngrok
    

内容的提问来源于stack exchange,提问作者Siddharth Pyapali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 17:12:42