3

注意:这是在 Kubernetes 的容器中运行的。

我已经成功地完成了这个非常简短的描述:https ://knative.dev/docs/serving/samples/grpc-ping-go/

成功:

2019/05/08 13:43:56 Ping got hello - pong
2019/05/08 13:43:56 Got pong 2019-05-08 13:43:57.646935391 +0000 UTC m=+1.661567121

但是,如果我在 https 的 knative 设置上从网关运行 443,它就不起作用:

docker run -ti --entrypoint=/client docker.io/{username}/grpc-ping-go \
  -server_addr="${SERVICE_IP}:443" \
  -server_host_override="${SERVICE_HOST}" \
  -insecure

2019/05/08 13:50:28 &{0xc00012e000}.Ping failed rpc error: code = Unavailable desc = transport is closing: 

示例中的客户端代码和服务器代码。服务器没有监听 tls,但是到服务器的连接是通过 https 的。

只是为了确保,我知道 https 是从一个简单的 hello-go 文本回复中磨损的。

4

1 回答 1

3

在您的服务器代码中,您没有在端口 443 上侦听,因此这很可能是您的示例无法正常工作的原因。

如果您想继续使用 http 而不是 https,那么您的代码就可以正常工作。

如果你想让它与 TLS 一起工作,这个概述是一个很好的概述。

要让端口 80 重定向到端口 443(如果您使用 https,我强烈推荐它),请参阅此 SO 帖子

于 2019-05-08T14:26:29.087 回答