github.com/leonlxy/hyperledger@v1.0.0-alpha.0.20170427033203-34922035d248/images/zookeeper/Dockerfile.in (about)

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