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 FROM vato.ddns.net:8083/alpine
ARG ARCH=x86_64 ARG ARCH=x86_64
@@ -22,3 +32,7 @@ RUN rm protoc-gen-grpc-web-*.sha256 && \
chmod +x /usr/bin/protoc-gen-grpc-web chmod +x /usr/bin/protoc-gen-grpc-web
COPY ./protoc-gen-* /usr/bin/ 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 # Protoc Docker
Docker container for generating protobuf code. Right now used in CI only for other projects. 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 ## 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)