Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Warning

Work in progress

Problem

We would like to provide a simple way to deploy and run Apache Bookkeeper with an official Docker image.

...

  • Is very similar to Zookeeper one (here the github sources)
  • Is based on Alpine Linux, a very appreciated distro for docker image (for lightweightness and security orientation)
    • (warning) Problem: Alpine uses a lightweight libc implementation that could lead to some compatibility issues with some system specific java libraries. The only problem I encountered so far is with Linux native epoll in Netty 4 (an issue for BK 4.5.0).
  • Follows nearly all docker official image guidelines
    • (warning) Problem: it currenty lacks only the key import in gpg signature verification. The best practice is:

      Code Block
      # gpg: key F73C700D: public key "Larry Hastings <larry@hastings.org>" imported
      RUN curl -fSL "https://www.python.org/ftp/python/$PYTHON_VERSION/Python-$PYTHON_VERSION.tar.xz" -o python.tar.xz \
          && curl -fSL "https://www.python.org/ftp/python/$PYTHON_VERSION/Python-$PYTHON_VERSION.tar.xz.asc" -o python.tar.xz.asc \
          && export GNUPGHOME="$(mktemp -d)" \
          && gpg --keyserver ha.pool.sks-keyservers.net --recv-keys 97FC712E4C024BBEA48A61ED3A5CA953F73C700D \
          && gpg --batch --verify python.tar.xz.asc python.tar.xz \
          && rm -r "$GNUPGHOME" python.tar.xz.asc \
          # install

      In current docker build "gpg --keyserver" and "gpg --batch" are commented.
      Providing a way to verify downloaded release is not mandatory, but it's a nice to have.

Directory Structure and Repository

...