{"id":19431016,"url":"https://github.com/rubenafo/eth-playground","last_synced_at":"2025-04-24T18:34:17.178Z","repository":{"id":52472259,"uuid":"191314077","full_name":"rubenafo/eth-playground","owner":"rubenafo","description":"Your very own private Ethereum cluster running on Docker","archived":false,"fork":false,"pushed_at":"2021-04-28T02:32:35.000Z","size":228,"stargazers_count":10,"open_issues_count":2,"forks_count":12,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-04-14T22:45:12.517Z","etag":null,"topics":["bitcoin","blockchain","dlt","docker","eth","ethereum","finance","truffle"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubenafo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-06-11T07:07:54.000Z","updated_at":"2023-03-10T12:03:30.000Z","dependencies_parsed_at":"2022-08-20T12:20:22.076Z","dependency_job_id":null,"html_url":"https://github.com/rubenafo/eth-playground","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubenafo%2Feth-playground","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubenafo%2Feth-playground/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubenafo%2Feth-playground/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubenafo%2Feth-playground/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubenafo","download_url":"https://codeload.github.com/rubenafo/eth-playground/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223964284,"owners_count":17232834,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bitcoin","blockchain","dlt","docker","eth","ethereum","finance","truffle"],"created_at":"2024-11-10T14:27:56.427Z","updated_at":"2024-11-10T14:27:56.908Z","avatar_url":"https://github.com/rubenafo.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eth-playground\nAn Ethereum private network running on Docker to mess with Blockchain and smart contracts.   \n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://github.com/rubenafo/eth-playground/blob/master/imgs/eth-stats.png\" width=\"600\"\u003e\n\u003c/p\u003e   \n\n## Motivation\n\nTo provide a simple, private Ethereum setup as close as possible to a production environment where the nodes are completely independent and just share the same network.   \nThe setup is simple enough to allow further experiments (thus the *playground* name) and deals with all the technical details as Docker deployment, node discovery and stats reporting.\n\n## Features \n\nBuilds and maintains 3 independent nodes in a Docker network and a *bootnode* to connect them.   \n* Vanilla Ethereum: everything is built and setup from scratch\n* Each node gets its own IP address and eth account, also:\n   * broadcasts its default account id from the **9090** TCP port.\n   * reports stats to the *netstat* node that is running [eth-netstats](https://github.com/cubedro/eth-netstats)\n* The *bootnode* node connects nodes dynamically when added into the network\n* A *netstat* node displaying the [eth-netstat dashboard](https://github.com/cubedro/eth-netstats)\n* *epl*, a CLI tool to perform maintenance operations: build, start, stop, login into nodes, check truffle, etc\n\n## Install\n\n1. Clone this repo\n2. cd eth-playground\n2. ./build.sh\n3. ./epl deploy\n\nDocker will display 4 nodes (ethbn, eth1, eth2, eth3) running inside the **ethnet** network.\n\n## Epl Usage\n\nOnce installed the nodes are fully independentent and self-discoverable thanks to the bootnode in place (**ethbn**).\n\n* epl login _nodeName_ : logs automatically inside the selected node\n* epl geth _nodeName_  : opens a geth console inside the selected node\n* epl stop : stops the eth network\n* epl start: starts the network again\n* epl deploy: stops and deploys the whole network again\n* epl info: displays the netstat node URL containing the dashboard\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubenafo%2Feth-playground","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frubenafo%2Feth-playground","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubenafo%2Feth-playground/lists"}