The repository contains docker images to generate gRPC client/server definitions and ProtoBuf messages.
All images are based on the alpine dist.
latest - tag is a large image that contains all compiled plugins binariesphp - is based on php:7-cli-alpine image and includes only necessary libs and binaries. It's much smaller than latest version.node - is based on node:11-alpine image and includes grpc-tools and protobuf.jsgo - is based on golang:1-alpine image and includes:
github.com/golang/protobuf/{protoc-gen-go,proto}google.golang.org/grpcts - is based on node:11-alpine imageweb - is based on node:11-alpine imageMore details can be found under apropriate subfolders.
/usr/local/bin/grpc_cpp_plugin/usr/local/bin/grpc_csharp_plugin/usr/local/bin/grpc_node_plugin/usr/local/bin/grpc_objective_c_plugin/usr/local/bin/grpc_php_plugin/usr/local/bin/grpc_python_plugin/usr/local/bin/grpc_ruby_pluginThe simplest way to use them is coping a binary file from the external image e.g.
COPY --from=nninja/grpc:latest /usr/local/bin/grpc_php_plugin /usr/local/bin/grpc_php_plugin
In order to generate gRPC stubs and protobuf messages for the specific language you can use the images provided by this repository.
A gRPC sample service can be found under examples directories.
To generate service definition and protobuf messages just run ./generate.sh. An output can be found under examples/output
Any help and PRs are kindly welcome. Do not hestitate to report the issue or just send me a feedback.
Please follow by common contributing flow called github flow.
Content type
Image
Digest
Size
674.8 MB
Last updated
over 7 years ago
docker pull nninja/grpc