Add Docker support with multi-arch build and user permissions handling
This pull request introduces a Dockerfile and supporting scripts to enable containerized builds and deployment of Bitcoin Core, targeting multiple architectures (amd64, arm64, riscv64).
Key changes include:
- Multi-stage Dockerfile to build Bitcoin Core from official releases, GitHub source, or local source with consistent environments.
- User and group creation inside the container to avoid running bitcoind as root, with proper permissions set on data directories.
- Entrypoint script to dynamically configure RPC bindings based on IPv4 or IPv6 protocol environment variable.
- Inclusion of gosu to drop root privileges safely inside the container.
- Docker Compose file for easy local development and testing setups.
This improves deployment reproducibility, security by avoiding root execution, and supports multiple CPU architectures for broader compatibility.
No changes to core Bitcoin functionality have been made. Tests remain passing for the built binaries.