亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Docker 和 gRPC - 連接關閉

Docker 和 gRPC - 連接關閉

Go
斯蒂芬大帝 2022-05-23 16:55:17
開門見山。我一直在嘗試在 docker 容器中移動一些微服務。為簡單起見,假設您在同一臺機器上有兩個微服務,分別稱為 A 和 B。這兩個微服務都使用 gRPC。微服務 A 想要在 B 中調用一個過程。B 在一個 docker 容器中,它在 A 運行的同一臺機器上,但不在容器中。當 A 調用一個過程時,我得到rpcerror: code = Unavailable desc = connection closed.我已經啟動了 B: docker run -it -p 51001:51001 B這是 DockerfileFROM golang as builderWORKDIR /go/src/bRUN \    git clone bla bla bla bla /go/src/b \    && GOOS=linux GOARCH=amd64 \    go get && CGO_ENABLED=0 go build -a -ldflags '-extldflags "-static"' -o main .FROM alpine:latestRUN apk --no-cache add ca-certificates && apk add --update bashWORKDIR /root/COPY --from=builder /go/src/b/main .COPY --from=builder /go/src/b/.env .EXPOSE 51001CMD ["./main"]我檢查了端口,容器內部和主機上的一切看起來都很好。我的主機附帶 MacOS。在沒有容器的情況下啟動時,一切正常。所以它與 docker、grpc 與 docker、一些網絡的東西有關,或者它甚至可能是 42 ......不知道。有人嗎?如果您需要其他信息,請詢問。
查看完整描述

2 回答

?
炎炎設計

TA貢獻1808條經驗 獲得超4個贊

遇到了類似的問題。不確定您如何設置 gRPC 服務器,但將偵聽器的地址從更改localhost:51001:51001修復。



查看完整回答
反對 回復 2022-05-23
?
MYYA

TA貢獻1868條經驗 獲得超4個贊

我也遇到了這個問題,對我來說我可以使用它來修復它

docker run -it --network host [...]

這當然不是一個實際的修復,只是 docker 網絡控制器正在拋出連接。

也許解決方法是更新您的 docker 安裝。


查看完整回答
反對 回復 2022-05-23
  • 2 回答
  • 0 關注
  • 307 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號