Clone this repo:

Branches

  1. 14161a3 Adding Code of Conduct by Matteo Scandolo · 4 years, 5 months ago master
  2. 74dcd14 SEBA-622 add grpcio-reflection by Scott Baker · 5 years ago 0.9.1
  3. f350dc3 [SEBA-497] by Zack Williams · 5 years ago 0.9.0
  4. f48514b Initial empty repository by Zack Williams · 5 years ago

alpine-grpc-base

Alpine image with gRPC and protobuf python tools as a generic base for XOS containers. This exists because building prebuilt binary wheels of certain python modules, specifically grpcio and grpcio-tools takes >10 minutes on Alpine (because of musl libc?).

By making a base image the compilation time is avoided and having a shared base image can speed image downloads.

Characteristics

  • Has no XOS-specific code and it's own VERSION independent of XOS development, so changes will happen more slowly, only when Alpine or included packages have new releases.

  • Installed via apk:

    • Standard toolchain (gcc, make, etc.) for building native extensions in Python
    • Libraries to build dependencies - librdkafka, libressl, libffi
    • python2, pip, setuptools
  • Installed via pip:

    • gRPC python libraries, and googleapi common protobuf definitions
    • kafkaloghandler
    • PyYAML
    • Twisted

Building

Run make build to build the container image, make push to send to a registry.

Testing

Currently the only test is to perform a container image build.