Skip to content

Latest commit

 

History

History
84 lines (66 loc) · 2.92 KB

GanacheCLI.md

File metadata and controls

84 lines (66 loc) · 2.92 KB

Ganache CLI

Para ejecutar contratos inteligentes y transacciones en general, necesitamos conectarnos a un nodo Ethereum. Hay varias implementaciones, en distintos lenguajes de programación, como Go, Rust y Java. Pero para estas lecciones voy a usar uno escrito en JavaScript que se ejecuta desde NodeJS.

Para usarlo, hay que instalar Ganache-CLI como módulo NodeJS pero de forma global, para que podamos lanzarlo desde cualquier directorio

npm install -g ganache-cli

(puede que en algún Linux necesitemos ejecutarlo con sudo antes de npm).

Una vez instalado globalmente, queda disponible un comando en nuestro path, que sirve para lanzar el nodo:

ganache-cli

Un ejemplo de salida:

Ganache CLI v6.4.3 (ganache-core: 2.5.5)

Available Accounts
==================
(0) 0x3eb7b3799921e065bd33714cb38398da4821fc0d
(1) 0xa280ccb243f36c0d3523397466d87a8da05c0b14
(2) 0x59f2b3fed3e0a75027d7650c6a12ef4994739012
(3) 0x194663e4656138b4cd67f5c8cab6f85f257a1f42
(4) 0x32fe421612cf7354cb9e08ce198ac1680fdfd183
(5) 0xd79e64a780977ddf6ab02a621c66ef22b27a526e
(6) 0x3af0a57624134a0d61a6f6c00f4dbb21f1ee7722
(7) 0x1cdb59d4f7f4949e897f4a50a3a69866f09e7cd0
(8) 0x9f6f4dcaa1cf623ab268e40932032eaca5ada0ab
(9) 0x7ab786e35ce10cd1f819b2b5c1806e6a5caf0843

Private Keys
==================
(0) c48c6393ede748f059dd9366c94b728b17926a54ef0e7f0b140793bab3df8e56
(1) ebd65ca586a9bade77f223bcee49a589c2ef869ce34cc131dbea433cd99ab832
(2) 67b7ea7de6051c15ab84371b0ebed7dc4bcd4976683ff6ce42550f96db0efc3f
(3) e7abf4fab1eb415b8f15c880b4abba0cf1d6fc252897ce92c6d3176894daae46
(4) 8698e4c4f1adce6dac7c0bb57c2452f5278347244287646be0beef69f82312bd
(5) 995707663d5cae9fe43c13e323298ab6f94dc507e4e2850e589d45ae2fec74d9
(6) 7464ded88ae8af37b3b4a7999d939107744454e17bd6f7017a04e00a4771d046
(7) b65f31898b3ef23361ce6848d123a48fd3b8ded966bbba185a973faf43a391d8
(8) 128934f6a06de778a3c7d76fe751be4245bfeac13f60c4a214e3fa8e1d0d8f61
(9) caeed53bd1fdc13a0f1ef98e2f335bb35226bec2355ad91b8fc89ff0af127817

HD Wallet
==================
Mnemonic:      only collect submit patrol order wrist when open athlete coffee bounce recipe
Base HD Path:  m/44'/60'/0'/0/{account_index}

Listening on localhost:8545

Vean que nos da diez cuentas iniciales, disponibles para nuestras pruebas y experimentos, y una billetera que las maneja en memoria. Hay que tomar en cuenta el port (8545 en el ejemplo de arriba) porque lo vamos a usar en las librerías y ejemplos cliente que ejecutar.

Otra forma de lanzarlo, que nos ayudará a ver que comandos recibe este nodo local, es ejecutando:

ganache-cli --verbose

Generalmente en mis videos y pruebas uso esta opción para que podamos ver las llamadas y respuestas JSON RPC que recibe y responde este nodo.

Recordemos que es un nodo local que no se conecta con una red externa. Tampoco deja traza en el disco, al menos de las formas que lo lanzamos más arriba, así que cada vez que lo lanzamos de nuevo comienza con una blockchain en cero.