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.
miner
node would try to connectbootstrap
.miner
minesbootstrap
exposes 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-dev
make init-source
[Note] Regarding to
pyethapp
repository: the default branch isethereum/pyethapp
which 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 setup
make init-config
Note 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 -d
make rebuild-boot-all
make rebuild-miner-all
-
bootstrap node
make run-boot
-
miner node
make run-miner
make setup27
docker-compose up -d