Basado en Ethereum POA (Clique) on Kubernetes.
Como entorno de laboratorio necesitamos una máquina Windows o Linux con las siguientes versiones:
- python>= 3.8.6
- vagrant >= 2.2.14
- virtualbox >= 6.1
- virtualbox-guest-additions >= 5.2.42
Estas son las que se han probado, lo que no quita que otras sean posibles.
- Clonamos el repositorio.
- Nos movemos a la carpeta
ethereum_adi
. - Ejecutamos el script de python3
start_network.py
.
Una vez este comando haya acabado tendremos una máquina virtual sobre la que se ejecutará el cluster de Kubernetes
(usando minikube
) donde se estará ejecutando la red de Ethereum POA.
La red consta de un bootnode, tres nodos mineros, un nodo monitor y un nodo explorador. El nodo monitor y el nodo explorar cuentan con una interfaz web en el puerto 3001 y 3000 respectivamente. Estas interfaces estarán disponibles una vez se haya desplegado la red por completo.
- Ejecutamos
vagrant ssh
para conectamos a la máquina virtual. - Nos movemos al directorio
ethereum_adi/network
.
- Ejecutamos:
python3 clustETHr.py -a
.
- Ejecutamos:
python3 clustETHr.py -r
.
- Ejecutamos:
python3 clustETHr.py -w
.
- Ejecutamos:
python3 clustETHr.py -d
.
- Ejecutamos
vagrant ssh
para conectamos a la máquina virtual. - Nos movemos al directorio
ethereum_adi/frontend
. - Ejecutamos:
python3 votaciones_CLI.py
.
- Ejecutamos
vagrant ssh
para conectamos a la máquina virtual.
- Nos movemos al directorio
ethereum_adi/frontend
. - Ejecutamos:
tox
.
- Nos movemos al directorio
ethereum_adi/backend
. - Ejecutamos:
sudo truffle test --network 123456
.
apt-get | pip3 | npm | Otros |
---|---|---|---|
net-tools | web3 | truffle | kubectl |
build-essential | PyYAML | ganache-cli | kubernetes |
solc | tox | minikube | |
ethereum | eth_account | vagrant | |
nodejs | virtualbox | ||
python3 | virtualbox-guest-additions | ||
python3-pip | |||
ruby-full | |||
docker.io | |||
dos2unix |
- Sergio Jiménez del Coso
- Héctor Moreno Sánchez
- Raúl Bernalte Sánchez
- Ismael Vélez Recio
- Juan Romero Cañas
- Enrique Adrián Villarrubia Martín