Example of using nginx-ingress with gRPC
This commit is contained in:
parent
87d1b8bbf2
commit
e98e3f3b9d
15 changed files with 697 additions and 0 deletions
59
images/grpc-fortune-teller/README.md
Normal file
59
images/grpc-fortune-teller/README.md
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
|
||||
# grpc-fortune-teller
|
||||
|
||||
This is the grpc server application for the nginx-ingress grpc example. Bazel
|
||||
0.12 is used for the building and container management.
|
||||
|
||||
## Build
|
||||
|
||||
Builds a statically compiled go binary cross-compiled for linux:
|
||||
|
||||
```
|
||||
$ bazel build //app:fortune
|
||||
Target //app:fortune up-to-date:
|
||||
bazel-bin/app/linux_amd64_static_pure_stripped/fortune
|
||||
```
|
||||
|
||||
> To build for your host system, comment out the `goos` and `goarch` attributes
|
||||
> in the `go_binary` rule.
|
||||
|
||||
## Run
|
||||
|
||||
Builds a minimal docker image that wraps the go_binary, loads it into your local
|
||||
docker image repository, and runs it:
|
||||
|
||||
```sh
|
||||
$ bazel run //app:image
|
||||
Loaded image ID: sha256:aa597c897c873116fcbfccafecf5ab0f6f4178a05e4a00c8e79de91ac0d2e9e7
|
||||
Tagging aa597c897c873116fcbfccafecf5ab0f6f4178a05e4a00c8e79de91ac0d2e9e7 as bazel/app:image
|
||||
2018/05/01 02:13:43 Restored /tmp/fortune-teller/usr/share/games/fortunes/fortunes.dat
|
||||
2018/05/01 02:13:43 Restored /tmp/fortune-teller/usr/share/games/fortunes/literature
|
||||
2018/05/01 02:13:43 Restored /tmp/fortune-teller/usr/share/games/fortunes/literature.dat
|
||||
2018/05/01 02:13:43 Restored /tmp/fortune-teller/usr/share/games/fortunes/riddles
|
||||
2018/05/01 02:13:43 Restored /tmp/fortune-teller/usr/share/games/fortunes/riddles.dat
|
||||
2018/05/01 02:13:43 Restored /tmp/fortune-teller/usr/share/games/fortunes/fortunes
|
||||
2018/05/01 02:13:43 Assets restored to /tmp/fortune-teller
|
||||
2018/05/01 02:13:43 Listening for gRPC requests at 50051
|
||||
```
|
||||
|
||||
Or run it via docker:
|
||||
|
||||
```sh
|
||||
$ docker run bazel/app:image
|
||||
```
|
||||
|
||||
Build image and push to the container registry specified in the `container_push`
|
||||
rule:
|
||||
|
||||
```sh
|
||||
$ bazel run //app:push
|
||||
```
|
||||
|
||||
## Invoke
|
||||
|
||||
```sh
|
||||
$ grpcurl -plaintext localhost:50051 build.stack.fortune.FortuneTeller/Predict
|
||||
{
|
||||
"message": "Whenever the literary German dives into a sentence, that is the last\nyou are going to see of him until he emerges on the other side of his\nAtlantic with his verb in his mouth.\n\t\t-- Mark Twain \"A Connecticut Yankee in King Arthur's Court\""
|
||||
}
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue