使用Delve和Docker-Can'调试Go API;我不能和邮递员联系
我正试图用Docker和Goland调试GoAPI 我遵循了这一点,我可以在调试Go应用程序时让它工作 但我的应用程序是一个API,所以它会启动,我希望当我通过Postman发出请求时,我的API应该在断点处停止 发生的情况是API没有响应,也没有被调用 以下是Goland应用程序日志:使用Delve和Docker-Can'调试Go API;我不能和邮递员联系,docker,go,goland,delve,Docker,Go,Goland,Delve,我正试图用Docker和Goland调试GoAPI 我遵循了这一点,我可以在调试Go应用程序时让它工作 但我的应用程序是一个API,所以它会启动,我希望当我通过Postman发出请求时,我的API应该在断点处停止 发生的情况是API没有响应,也没有被调用 以下是Goland应用程序日志: API server listening at: [::]:40000 [GIN-debug] [WARNING] Creating an Engine instance with the Logger and
API server listening at: [::]:40000
[GIN-debug] [WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached.
[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.
- using env: export GIN_MODE=release
- using code: gin.SetMode(gin.ReleaseMode)
[GIN-debug] GET /operations/:operation_id/keys --> main.displayKeysList (5 handlers)
[GIN-debug] HEAD /operations/:operation_id/keys --> main.main.func1 (4 handlers)
[GIN-debug] Listening and serving HTTP on :9999
它告诉我我的应用程序在9999端口上运行,而delve在40000端口上运行
我尝试了9999端口和40000端口,但它们都不能满足我的请求
我缺少什么?您的应用程序仍在运行,需要打开并转发端口9999才能向其发出请求 端口40000由Delve使用,您应该将IDE连接到远程服务,以允许它使用
Go remote
run配置启动/继续
如果您对此仍有问题,请在上提出问题并提供更多详细信息,屏幕截图或要复制的代码将非常有用,或者在goland channel上向我们发送ping。您是否在docker内部运行此功能?您从哪里访问这些端口?(在docker与主机之间?)您是如何调用docker的?你设置了端口映射吗?好的,当我不使用调试器时,我通过docker compose使用它,是的,我转发端口,这样我可以在docker外部访问它,但是当使用调试器时,我不能再访问它了。我用调试器添加了一个端口转发错误!谢谢你的回复,它帮助我找到了解决方案