github.com/darrenli6/fabric-sdk-example@v0.0.0-20220109053535-94b13b56df8c/images/zookeeper/Dockerfile.in (about)

     1  # Copyright Greg Haskins All Rights Reserved
     2  #
     3  # SPDX-License-Identifier: Apache-2.0
     4  #
     5  FROM _BASE_NS_/fabric-baseimage:_BASE_TAG_
     6  # Based on https://github.com/31z4/zookeeper-docker/blob/master/3.4.10/Dockerfile
     7  
     8  # Install su-exec
     9  RUN set -x \
    10      && git clone https://github.com/ncopa/su-exec /tmp/su-exec/ \
    11      && cd /tmp/su-exec \
    12      && make all \
    13      && cp su-exec /usr/bin/
    14  
    15  ENV ZOO_USER=zookeeper \
    16      ZOO_CONF_DIR=/conf \
    17      ZOO_DATA_DIR=/data \
    18      ZOO_DATA_LOG_DIR=/datalog \
    19      ZOO_PORT=2181 \
    20      ZOO_TICK_TIME=2000 \
    21      ZOO_INIT_LIMIT=5 \
    22      ZOO_SYNC_LIMIT=2
    23  
    24  # Add a user and make dirs
    25  RUN set -x \
    26      && useradd "$ZOO_USER" \
    27      && mkdir -p "$ZOO_DATA_LOG_DIR" "$ZOO_DATA_DIR" "$ZOO_CONF_DIR" \
    28      && chown "$ZOO_USER:$ZOO_USER" "$ZOO_DATA_LOG_DIR" "$ZOO_DATA_DIR" "$ZOO_CONF_DIR"
    29  
    30  ARG GPG_KEY=C823E3E5B12AF29C67F81976F5CECB3CB5E9BD2D
    31  ARG DISTRO_NAME=zookeeper-3.4.10
    32  
    33  # Download Apache Zookeeper, verify its PGP signature, untar and clean up
    34  RUN set -x \
    35      && cd / \
    36      && curl -fsSL "http://www.apache.org/dist/zookeeper/$DISTRO_NAME/$DISTRO_NAME.tar.gz" | tar -xz \
    37      && mv "$DISTRO_NAME/conf/"* "$ZOO_CONF_DIR"
    38  
    39  WORKDIR $DISTRO_NAME
    40  VOLUME ["$ZOO_DATA_DIR", "$ZOO_DATA_LOG_DIR"]
    41  
    42  EXPOSE $ZOO_PORT 2888 3888
    43  
    44  ENV PATH=$PATH:/$DISTRO_NAME/bin \
    45      ZOOCFGDIR=$ZOO_CONF_DIR
    46  
    47  COPY payload/docker-entrypoint.sh /
    48  ENTRYPOINT ["/docker-entrypoint.sh"]
    49  CMD ["zkServer.sh", "start-foreground"]