3 Commits
0.0.1 ... 1.0.0

Author SHA1 Message Date
Piv
24bc8259bd Use protoc as entrypoint 2020-11-24 12:45:48 +10:30
Piv
d0ce4a41a3 Update readme 2020-11-24 12:42:04 +10:30
Piv
423db22640 Add grpc python build 2020-11-23 21:54:39 +10:30
2 changed files with 19 additions and 1 deletions

View File

@@ -1,3 +1,13 @@
FROM vato.ddns.net:8083/debian:buster AS CGRPC_BUILDER
ARG CGRPC_VERSION=v1.33.2
RUN apt update -y && apt install git build-essential autoconf libtool pkg-config zlib1g-dev -y
RUN git clone -b ${CGRPC_VERSION} --recursive https://github.com/grpc/grpc
RUN cd grpc && make plugins -j 12
FROM vato.ddns.net:8083/alpine
ARG ARCH=x86_64
@@ -22,3 +32,7 @@ RUN rm protoc-gen-grpc-web-*.sha256 && \
chmod +x /usr/bin/protoc-gen-grpc-web
COPY ./protoc-gen-* /usr/bin/
COPY --from=CGRPC_BUILDER /grpc/bins/opt/grpc_python_plugin /usr/bin/protoc-gen-grpc-python
ENTRYPOINT ["protoc"]

View File

@@ -1,7 +1,11 @@
# Protoc Docker
Docker container for generating protobuf code. Right now used in CI only for other projects.
Smallish image size (~220mb); unfortunately the grpc-swift plugins cause it to blow out as they're statically linked (so don't need foundation or the swift dependencies).
Not copying them across will save ~100mb in space.
## TODOS
- Build the swift plugins inside this repo, rather than committing the built plugins
- Build the swift plugins inside the dockerfile, rather than committing the built plugins
- Build the grpc-web plugins in the dockerfile, rather than downloading built versions
- Use CMake/Bazel for building the grpc plugins - [CMake dockerfile](https://hub.docker.com/r/kitware/cmake)