You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1.0 KiB

  1. FROM golang:1.12
  2. # Add testing deps for curl
  3. RUN echo 'deb http://httpredir.debian.org/debian testing main non-free contrib' >> /etc/apt/sources.list
  4. # Grab deps (jq, hexdump, xxd, killall)
  5. RUN apt-get update && \
  6. apt-get install -y --no-install-recommends \
  7. jq bsdmainutils vim-common psmisc netcat curl
  8. # Setup tendermint repo
  9. ENV REPO $GOPATH/src/github.com/tendermint/tendermint
  10. ENV GOBIN $GOPATH/bin
  11. WORKDIR $REPO
  12. # Copy in the code
  13. # TODO: rewrite to only copy Makefile & other files?
  14. COPY . $REPO
  15. # Install the vendored dependencies
  16. # docker caching prevents reinstall on code change!
  17. RUN make get_tools
  18. # install ABCI CLI
  19. RUN make install_abci
  20. # install Tendermint
  21. RUN make install
  22. RUN tendermint testnet \
  23. --config $REPO/test/docker/config-template.toml \
  24. --node-dir-prefix="mach" \
  25. --v=4 \
  26. --populate-persistent-peers=false \
  27. --o=$REPO/test/p2p/data
  28. # Now copy in the code
  29. # NOTE: this will overwrite whatever is in vendor/
  30. COPY . $REPO
  31. # expose the volume for debugging
  32. VOLUME $REPO
  33. EXPOSE 26656
  34. EXPOSE 26657