github.com/evdatsion/aphelion-dpos-bft@v0.32.1/DOCKER/Dockerfile (about)

     1  FROM alpine:3.9
     2  LABEL maintainer="hello@tendermint.com"
     3  
     4  # Tendermint will be looking for the genesis file in /config/genesis.json
     5  # (unless you change `genesis_file` in config.toml). You can put your config.toml and
     6  # private validator file into /config.
     7  #
     8  # The /data dir is used by tendermint to store state.
     9  ENV TMHOME 
    10  
    11  # OS environment setup
    12  # Set user right away for determinism, create directory for persistence and give our user ownership
    13  # jq and curl used for extracting `pub_key` from private validator while
    14  # deploying tendermint with Kubernetes. It is nice to have bash so the users
    15  # could execute bash commands.
    16  RUN apk update && \
    17      apk upgrade && \
    18      apk --no-cache add curl jq bash && \
    19      addgroup tmuser && \
    20      adduser -S -G tmuser tmuser -h "$TMHOME"
    21  
    22  # Run the container with tmuser by default. (UID=100, GID=1000)
    23  USER tmuser
    24  
    25  # Expose the data directory as a volume since there's mutable state in there
    26  VOLUME [ $TMHOME ]
    27  
    28  WORKDIR $TMHOME
    29  
    30  # p2p and rpc port
    31  EXPOSE 26656 26657
    32  
    33  ENTRYPOINT ["/usr/bin"]
    34  CMD ["node", "--moniker=`hostname`"]
    35  STOPSIGNAL SIGTERM
    36  
    37  ARG BINARY=tendermint
    38  COPY $BINARY /usr/bin
    39