A simple gRPC server written in Go that you can use for testing.
-
Install docker.
-
Download a copy of the code:
git clone -b "release-0.7" https://github.com/knative/docs knative-docs cd knative-docs/docs/serving/samples/grpc-ping-go
First, build and publish the gRPC server to DockerHub (replacing {username}
):
# Build and publish the container, run from the root directory.
docker build \
--tag "docker.io/{username}/grpc-ping-go" \
--file=docs/serving/samples/grpc-ping-go/Dockerfile .
docker push "docker.io/{username}/grpc-ping-go"
Next, replace {username}
in sample.yaml
with your DockerHub username, and
apply the yaml.
kubectl apply --filename docs/serving/samples/grpc-ping-go/sample.yaml
-
Fetch the created ingress hostname and IP.
# Put the ingress IP into an environment variable. export SERVICE_IP=`kubectl get svc istio-ingressgateway --namespace istio-system --output jsonpath="{.status.loadBalancer.ingress[*].ip}"`
-
Use the client to send message streams to the gRPC server (replacing
{username}
)docker run -ti --entrypoint=/client docker.io/{username}/grpc-ping-go \ -server_addr="${SERVICE_IP}:80" \ -server_host_override="grpc-ping.default.example.com" \ -insecure