based on https://github.com/grpc/grpc-go/tree/master/examples
-tls
を指定した場合、デフォルトでは内部に抱えている秘密鍵と証明書が使われる。
server で -cert_file
, -key_file
を指定した場合は client で -ca_file
を指定する必要がある。
$ ./server -help
Usage of ./server:
-cert_file string
The TLS cert file
-key_file string
The TLS key file
-port int
The server port (default 10000)
-sleep int
wait duration in second before response
-tls
Connection uses TLS if true, else plain TCP
$ ./client -help
Usage of ./client:
-ca_file string
The file containing the CA root cert file
-count int
number of request (default 1)
-interval int
request interval
-server_addr string
The server address in the format of host:port (default "localhost:10000")
-server_host_override string
The server name use to verify the hostname returned by TLS handshake (default "x.test.youtube.com")
-timeout int
read timeout in second (default 1)
-tls
Connection uses TLS if true, else plain TCP
$ docker run --rm --name grpc-helloworld yteraoka/grpc-helloworld
$ docker exec -it grpc-helloworld /client