登录
首页 >  Golang >  Go问答

在Docker中部署gRPC(Go)服务器并公开端口到本地端口时遇到端口绑定问题

来源:stackoverflow

时间:2024-03-05 12:54:26 460浏览 收藏

大家好,我们又见面了啊~本文《在Docker中部署gRPC(Go)服务器并公开端口到本地端口时遇到端口绑定问题》的内容中将会涉及到等等。如果你正在学习Golang相关知识,欢迎关注我,以后会给大家带来更多Golang相关文章,希望我们能一起进步!下面就开始本文的正式内容~

问题内容

我尝试在docker中部署grpc服务器和mongodb。之后我尝试将 docker 端口绑定到我的本地端口。 mongodb 端口绑定工作正常。但是,grpc 服务器端口没有绑定我的本地端口

ports:
  - "50051:50051"

像这样我在 docker-compose.yml 中尝试过

docker-compose.yml

services:
  auth_server:
    container_name: auth_service
    build: .
    command: go run server.go
    volumes:
      - .:/go/src/auth_server
    working_dir: /go/src/auth_server
    ports:
      - "50051:50051"
    environment:
      port: 50051

在客户端 grpc 文件中,我使用了主机和端口,例如 0.0.0.0:50051

conn, err := grpc.Dial("0.0.0.0:50051", grpc.WithInsecure())

但它不起作用。我找不到任何错误,所以我认为我做错了什么。


解决方案


从主机上的客户端连接时,应使用 127.0.0.1:50051;如果从 docker-compose 网络连接,则应使用 auth_server:50051

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《在Docker中部署gRPC(Go)服务器并公开端口到本地端口时遇到端口绑定问题》文章吧,也可关注golang学习网公众号了解相关技术文章。

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