[Update] I have only updated the docker portion of the project. The original project used a Ubuntu Xenial image, but the build failed for the current bitcoin core release because xenial does not ship with the required gcc support. I have moved this to Ubuntu Focal, which means that after you build the docker image, you must compile/manually install libdb4.8. See instruction in Unix Build Notes. I'll eventually work this into the build process, still learning.
Build controlled dev envs to compile and test Bitcoin tools.
Detailed project documentation at: http://daniel-lima.github.io/bitcoin-devenv.
Using Docker
- How to compile Bitcoin Core for Ubuntu;
- How to compile Bitcoin Core for Windows; (Not Tested!)
- How to...
Using Vagrant (Not Tested!)
- How to compile Bitcoin Core for Ubuntu;
- How to compile Bitcoin Core for Windows;
- How to deterministically build Bitcoin Core (Gitian);
- How to...
Do not use this tool neither to build or run production ready versions of Bitcoin Core or any Bitcoin related software!
The reliability of the base Docker images and the base Vagrant boxes is unknown, so you should not expose your (true) private keys to them or to softwares built in/from them.
If you're trying to produce deterministic builds and you know what you're doing and you have enough signatures to verify the generated artifacts, you may want to check bitcoin.gitian - Vagrant machine.
This environment builder is released under the terms of the Apache License.
To experiment Bitcoin Core as a developer, I needed an enviroment:
- Isolated from the host env;
- Capable of being used in different computers;
- Easy and quick to configure, install, reconfigure, reinstall and to uninstall.
So containerization and virtualization, through Docker and Vagrant, came to play.