ruby-on-rails - 将 ruby-debug-ide 附加到现有的 Rails 服务器
问题描述
背景
我已经ruby-debug-ide
在 Visual Studio Code 中设置了远程调试(我正在使用 Docker)。我在我docker-compose.yml
的启动ruby-debug-ide
和我的rails服务器中使用这个命令:
rm -f /api/tmp/pids/server.pid && rdebug-ide --host 0.0.0.0 --port 1234 -- bin/rails server --port=3000 --binding=0.0.0.0
然后在 vscode 我有这个 launch.json 脚本:
{
"name": "Listen for rdebug-ide",
"type": "Ruby",
"request": "attach",
"cwd": "${workspaceRoot}",
"remoteHost": "127.0.0.1",
"remotePort": "1234",
"remoteWorkspaceRoot": "/app",
"showDebuggerOutput": true
}
当我去 vscode 并启动那个 launch.json 脚本时,我的 rails 服务器和调试器一样启动。但是当我停止/分离 launch.json 脚本时,rails 服务器就死了。
我的问题
有没有办法ruby-debug-ide
独立启动我的 Rails 服务器?我希望能够在不调试时访问我的 Rails 应用程序。是否有可能做这样的事情:
# start my rails server
rm -f /api/tmp/pids/server.pid && bin/rails server --port=3000 --binding=0.0.0.0
# also start rdebug-ide and wait for something (vscode) to attach to it later on
rdebug-ide --host 0.0.0.0 --port 1234 -- <attach_to_my_rails_server>
解决方案
你试过这个:
rdebug-ide --host 0.0.0.0 --port 1234 -- bin/rails s -b 0.0.0.0
推荐阅读
- wordpress - 无法在插件中获取 Post 元数据
- python - 如何将多个参数传递给 Process?
- php - PayPal Checkout:付款后更新数据库中的值
- r - tradeStrats() 中 use = "txns" 和 use = "trades" 的区别?
- node.js - 首次调用 require() 时,节点 js 是否进行缓存?使用 Next.js
- java - 如何在 TextView 中更改数字格式
- python - 如何在实例化对象时传递 **kwargs 并在类的 __init__() 方法中访问它
- r - ggplot2:当data.frame中有NA值时,如何摆脱带有空图例的geom_point冗余颜色代码?
- react-hooks - 反应钩子 - 无法读取未定义的属性映射
- python-3.x - 异步不和谐机器人中的时间不一致