这涉及在 macOS 上将 ngrok 作为 后台服务 运行。按照指示,我安装了该服务:
ngrok service install --config /opt/homebrew/etc/ngrok/config.yml
然后开始:
ngrok service start
但是,日志输出表明
inspect: true
被忽略,因为检查数据库已禁用:
INFO[05-08|10:13:12] open config file path=/opt/homebrew/etc/ngrok/config.yml err=nil
WARN[05-08|10:13:12] ignoring inspect: true because inspection database is disabled name=<snip>
根据代理配置文件的docs,当
inspect_db_size
的值为-1
时,检查数据库似乎被禁用。默认为 0
,这实际上意味着大小上限为 50MB。也许我需要强制启用此功能?所以我明确地将相关值添加到配置文件中:
version: "2"
authtoken: <snip>
api_key: <snip>
# 100 MB
inspect_db_size: 104857600
tunnels:
nameofmytunnel:
proto: http
addr: 3000
inspect: true
使用更新的配置文件重新启动服务后,我不断看到有关禁用的检查数据库的相同日志输出。此外,访问 http://localhost:4040/status 的 Web UI 时,“检查”状态被标记为“已禁用”。
是否有另一个我忽略的配置不断禁用检查数据库?当我运行
ngrok http 3000
并使 ngrok 在终端会话的前台运行时,状态页面将“Inspect”显示为“enabled”。我希望在 launchd 中运行时启用此功能。
我运行的ngrok版本是3.2.2。
我在工作空间中也有同样的行为。在搜索了整个互联网之后,我决定制定一个解决方法,它对我有用(Ubuntu 22)。
编辑“/etc/systemd/system/ngrok.service”
评论以下行:
#ExecStart=/usr/local/bin/ngrok "service" "run" "--config" "/home/vagrant/.config/ngrok/ngrok.yml"
ExecStart=/usr/local/bin/ngrok "start" "--all" "--config" "/home/vagrant/.config/ngrok/ngrok.yml"
sudo systemctl daemon-reload
sudo systemctl start ngrok
我不知道如何在 Mac 操作系统上执行此操作。但我可以认为它们是相似的。
希望这有帮助!
Windows 常用程序,可编辑符合列表的命令更改服务路径
(isto deveria ser um comentário à resposta anterior mas minha conta não possui reputação suficiente