29 lines
895 B
Docker
29 lines
895 B
Docker
|
FROM alpine:3.5
|
||
|
|
||
|
# BCHOME is where your genesis.json, key.json and other files including state are stored.
|
||
|
ENV BCHOME /basecoin
|
||
|
|
||
|
# Create a basecoin user and group first so the IDs get set the same way, even
|
||
|
# as the rest of this may change over time.
|
||
|
RUN addgroup basecoin && \
|
||
|
adduser -S -G basecoin basecoin
|
||
|
|
||
|
RUN mkdir -p $BCHOME && \
|
||
|
chown -R basecoin:basecoin $BCHOME
|
||
|
WORKDIR $BCHOME
|
||
|
|
||
|
# Expose the basecoin home directory as a volume since there's mutable state in there.
|
||
|
VOLUME $BCHOME
|
||
|
|
||
|
# jq and curl used for extracting `pub_key` from private validator while
|
||
|
# deploying tendermint with Kubernetes. It is nice to have bash so the users
|
||
|
# could execute bash commands.
|
||
|
RUN apk add --no-cache bash curl jq
|
||
|
|
||
|
COPY basecoin /usr/bin/basecoin
|
||
|
|
||
|
ENTRYPOINT ["basecoin"]
|
||
|
|
||
|
# By default you will get the basecoin with local MerkleEyes and in-proc Tendermint.
|
||
|
CMD ["start", "--dir=${BCHOME}"]
|