This is a simple containized private network for pyethapp development with Docker Compose. It helps for:
- Python2 / Python3 compatibility migration and testing
- Understanding how to configure and develop pyethapp
- Developing Casper and sharding on pyethapp
If you want to build pyethapp private network, please see konradkonrad/docker-pyeth-cluster: pyethapp private cluster with docker-compose.
Dockerfile- Python3.6-based imageDockerfile-py27- Python2.7-based image
There are two sample default nodes: bootstrap node and miner node.
minernode would try to connectbootstrap.minerminesbootstrapexposes json-rpc host0.0.0.0
miner-py27 node has the same configuration as miner node except [node][privkey_hex]. This node is used for testing Python2 during migration.
| Container Name | Image | Internal IP | Ports Mapping |
|---|---|---|---|
| bootstrap | localethereum/pyethapp-dev | 172.18.250.2 | 40002:30303, 40002:30303/udp, 41002:8545 |
| miner | localethereum/pyethapp-dev | 172.18.250.3 | 40003:30303, 40003:30303/udp, 41003:8545 |
| miner-py27 | localethereum/pyethapp-dev27 | 172.18.250.4 | 40004:30303, 40004:30303/udp, 41004:8545 |
There are some default commands in Makefile and some default configuration for testing pyethapp.
git clone https://github.com/hwwhww/docker-pyeth-dev.git
cd docker-pyeth-devmake init-source[Note] Regarding to
pyethapprepository: the default branch isethereum/pyethappwhich doesn't support Python3 for now and the Python3 compatible PR is in review. For now, please switch to a workable branch manually: https://github.com/hwwhww/pyethapp/commits/dev_env
make setupmake init-configNote that all containers share the same source code in
./shared_data/.
Change DOCKER_PYETH_DEV_REPO_ABSOLUTE_PATH to the absolute path of docker-pyeth-dev directory.
docker-compose up -dmake rebuild-boot-all
make rebuild-miner-all-
bootstrap node
make run-boot
-
miner node
make run-miner
make setup27docker-compose up -d