登录
首页 >  Golang >  Go问答

容器化 API 套接字挂起

来源:stackoverflow

时间:2024-04-30 14:09:38 339浏览 收藏

亲爱的编程学习爱好者,如果你点开了这篇文章,说明你对《容器化 API 套接字挂起》很感兴趣。本篇文章就来给大家详细解析一下,主要介绍一下,希望所有认真读完的童鞋们,都有实质性的提高。

问题内容

我刚刚完成 go rest api 的开发,我想将我的代码移至容器中。我已经完成了这一点,但由于抛出错误:error:sockethang up,所以我无法通过邮递员到达我的端点。

根据这个so线程,这可能是由我的防火墙引起的,运行ufw status后我注意到我的防火墙没有启动,所以我不确定是什么导致了这个错误。

我的应用程序似乎运行正常,并且我将容器映射到本地计算机中的端口 8080。

└─(19:14:04 on master ✭)──> docker ps                                                                                                                     ──(tue,feb02)─┘
container id   image        command       created          status          ports                    names
b001f19e2957   go-library   "./library"   15 minutes ago   up 15 minutes   0.0.0.0:8080->8080/tcp   cranky_kare

我还确保我的请求正在使用此端口。

GET http://localhost:8080/books/3
Error: socket hang up
Request Headers
User-Agent: PostmanRuntime/7.26.10
Accept: */*
Postman-Token: 190a5849-b859-4324-a65e-37a7b69b49fb
Host: localhost:8080
Accept-Encoding: gzip, deflate, br

解决方案


我的问题是我在 127.0.0.1 上启动服务器,并且端口映射未指向此接口。在所有接口(0.0.0.0)上启动它对我有用:

addr := fmt.Sprintf("0.0.0.0:%v", settings.Port)
server := &http.Server{
    Addr:         addr,
    Handler:      app.Router,
    IdleTimeout:  120 * time.Second,
    ReadTimeout:  5 * time.Second,
    WriteTimeout: 5 * time.Second,
}

终于介绍完啦!小伙伴们,这篇关于《容器化 API 套接字挂起》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>