* Ensure Dockerfile stages use consistent Go version (#9462)
I noticed the tendermint image was running on Go 1.15. I assume that was just a missed search and replace when updating to go1.18.
Pull the go base image into a build arg so that the image is only defined once, and used consistently across all stages of the build.
#### PR checklist
- [x] Tests written/updated, or no tests needed
- [x] `CHANGELOG_PENDING.md` updated, or no changelog entry needed
- [x] Updated relevant documentation (`docs/`) and code comments, or no
documentation updates needed
(cherry picked from commit 84bc77cb1f)
# Conflicts:
# CHANGELOG_PENDING.md
* Resolve conflict in CHANGELOG_PENDING
Signed-off-by: Thane Thomson <connect@thanethomson.com>
Signed-off-by: Thane Thomson <connect@thanethomson.com>
Co-authored-by: Mark Rushakoff <mark.rushakoff@gmail.com>
Co-authored-by: Thane Thomson <connect@thanethomson.com>
Docker
Supported tags and respective Dockerfile links
DockerHub tags for official releases are here. The "latest" tag will always point to the highest version number.
Official releases can be found here.
The Dockerfile for Tendermint is not expected to change in the near future. The main file used for all builds can be found here.
Respective versioned files can be found https://raw.githubusercontent.com/tendermint/tendermint/vX.XX.XX/DOCKER/Dockerfile (replace the Xs with the version number).
Quick reference
- Where to get help: https://tendermint.com/
- Where to file issues: https://github.com/tendermint/tendermint/issues
- Supported Docker versions: the latest release (down to 1.6 on a best-effort basis)
Tendermint
Tendermint Core is Byzantine Fault Tolerant (BFT) middleware that takes a state transition machine, written in any programming language, and securely replicates it on many machines.
For more background, see the the docs.
To get started developing applications, see the application developers guide.
How to use this image
Start one instance of the Tendermint core with the kvstore app
A quick example of a built-in app and Tendermint core in one container.
docker run -it --rm -v "/tmp:/tendermint" tendermint/tendermint init
docker run -it --rm -v "/tmp:/tendermint" tendermint/tendermint node --proxy_app=kvstore
Local cluster
To run a 4-node network, see the Makefile in the root of the repo and run:
make build-linux
make build-docker-localnode
make localnet-start
Note that this will build and use a different image than the ones provided here.
License
- Tendermint's license is Apache 2.0.
Contributing
Contributions are most welcome! See the contributing file for more information.