TRON-CLI is a command line tool that allows developers to quickly set up and manage their TRON nodes and grid api service.
_________ ____ _ __ _______ ____
/_ __/ _ \/ __ \/ |/ /___/ ___/ / / _/
/ / / , _/ /_/ / /___/ /__/ /___/ /
/_/ /_/|_|\____/_/|_/ \___/____/___/
Python | JDK |
---|---|
3.6+ | Oracle 1.8 |
-
Learn more about tron on TRON Developer Hub
-
Join the community on TRON Discord
-
Source code on Github
-
Project on Pypi
2. Go version tron-cli support newest java-tron version 3.6.1, check it out here: https://github.com/TRON-US/go-tron-cli
pip install --upgrade pip
pip install troncli
tron-cli i
Quickly set up what you want by answerinig a few questions.
tron-cli quick
By default, it will set up a private test-net full node for you.
-
You can also
--nettype main
to set up a full node which syncs to main net. -
--reset True
to reset all
You can set up a full node, solidity node, event node, and grid api service (local tron-grid) with more detailed configurations via the provided subcommands. See usage by tron-cli -h
, and -h
on each subcommands.
Command | Functions | Example1 | Example2 |
---|---|---|---|
tron-cli init --version --reset | Init dirs and fetch code. | tron-cli init | tron-cli init --version 3.2.2 --reset True |
tron-cli config --nettype ---nettype --fullhttpport --solhttpport --eventhttpport --fullrpcport --solrpcport --eventrpcport --enablememdb --dbsyncmode --saveintertx --savehistorytx --gridport --dbname --dbusername --dbpassword | Create and customize config files. | tron-cli config | tron-cli config --nettype private --fullhttpport 8500 --solhttpport 8600 --eventhttpport 8400 --fullrpcport 58500 --solrpcport 58600 --eventrpcport 58400 --enablememdb True --dbsyncmode async --saveintertx False --savehistorytx False --gridport 18891 --dbname events --dbusername tron --dbpassword 12345678 --reset True |
tron-cli run --nodetype | Run node. | tron-cli run | tron-cli run --nodetype full |
tron-cli stop --node | Stop node. | tron-cli stop | tron-cli stop --node 7777 |
tron-cli status --node | Monitor nodes status. | tron-cli status | tron-cli status --node 777 |
tron-cli quick --reset | Quick start. | tron-cli quick | tron-cli quick --nettype main --reset True |
tron-cli log --nodetype --filter | Show filtered log. | tron-cli log | tron-cli --nodetype sol --filter height |
tron-cli i | Switch to Interactive Mode. | tron-cli i | tron-cli i |
tron-cli version | Check installed troncli version. | tron-cli version | tron-cli version |
tron-cli -h, --help | Check help manual. | tron-cli -h | tron-cli --help |
tron-cli -h
usage: tron-cli [-h] {init,config,run,stop,status,quick,log,version,i} ...
which subcommand do you want?
optional arguments:
-h, --help show this help message and exit
subcommands:
{init,config,run,stop,status,quick,log,version,i}
init Init dirs and fetch code.
config Create customize config files.
run Run node.
stop Stop node.
status Monitor nodes status.
quick Quick start. (run a full private/main node by one
command)
log Show filtered log.
version Check installed troncli version.
i Interactive Mode.
tron-cli init -h
usage: tron-cli init [-h] [--version VERSION] [--reset RESET]
optional arguments:
-h, --help show this help message and exit
--version VERSION specify java-tron version
--reset RESET reset all
tron-cli config -h
usage: tron-cli config [-h] [--nettype NETTYPE] [--fullhttpport FULLHTTPPORT]
[--solhttpport SOLHTTPPORT]
[--eventhttpport EVENTHTTPPORT]
[--fullrpcport FULLRPCPORT] [--solrpcport SOLRPCPORT]
[--eventrpcport EVENTRPCPORT]
[--enablememdb ENABLEMEMDB] [--dbsyncmode DBSYNCMODE]
[--saveintertx SAVEINTERTX]
[--savehistorytx SAVEHISTORYTX] [--gridport GRIDPORT]
[--dbname DBNAME] [--dbusername DBUSERNAME]
[--dbpassword DBPASSWORD] [--reset RESET]
optional arguments:
-h, --help show this help message and exit
--nettype NETTYPE specify net type [main, private]
--fullhttpport FULLHTTPPORT
specify full node http port
--solhttpport SOLHTTPPORT
specify solidity node http port
--eventhttpport EVENTHTTPPORT
specify event node http port
--fullrpcport FULLRPCPORT
specify full node rpc port
--solrpcport SOLRPCPORT
specify solidity node rpc port
--eventrpcport EVENTRPCPORT
specify event node rpc port
--enablememdb ENABLEMEMDB
enable/disable in memory db
--dbsyncmode DBSYNCMODE
specify either db async or sync mode
--saveintertx SAVEINTERTX
enable/disable save internal transcation
--savehistorytx SAVEHISTORYTX
enable/disable save history transcation
--gridport GRIDPORT specify grid api port
--dbname DBNAME specify db name
--dbusername DBUSERNAME
specify db user name
--dbpassword DBPASSWORD
specify db password name
--reset RESET reset config to default settings
tron-cli run -h
usage: tron-cli run [-h] [--nodetype NODETYPE]
optional arguments:
-h, --help show this help message and exit
--nodetype NODETYPE specify node type [full, sol, event, grid]
tron-cli stop -h
usage: tron-cli stop [-h] [--node NODE]
optional arguments:
-h, --help show this help message and exit
--node NODE stop node by given node id or all
tron-cli status -h
usage: tron-cli status [-h] [--node NODE]
optional arguments:
-h, --help show this help message and exit
--node NODE check specific node detail by node id
tron-cli log -h
usage: tron-cli log [-h] [--nodetype NODETYPE] [--filter FILTER]
optional arguments:
-h, --help show this help message and exit
--nodetype NODETYPE specify node type [full, sol, event, grid]
--filter FILTER specify filter [number/height]
tron-cli version -h
usage: tron-cli version [-h]
optional arguments:
-h, --help show this help message and exit
tron-cli i -h
usage: tron-cli i [-h]
optional arguments:
-h, --help show this help message and exit
Notice: Take a look at tron-cli i
first, interactive mode should cover most use cases.
a. set up full node only
tron-cli quick
b. add a solidity node
tron-cli run --nodetype sol
a. init
tron-cli init
b. config to main-net
tron-cli config --nettype main
c. run full node
tron-cli run
a. initilize
tron-cli init --version latest --reset True
b. detail config (specify parameter to overwrite default)
tron-cli config --nettype private --fullhttpport 8500 --solhttpport 8600 --eventhttpport 8400 --fullrpcport 58500 --solrpcport 58600 --eventrpcport 58400 --enablememdb True --dbsyncmode async --saveintertx False --savehistorytx False --gridport 18891 --dbname Null --dbusername Null --dbpassword Null
c. run full/sol
tron-cli run --nodetype full
a. install mongodb and create user & db
b. initilize
tron-cli init
c. config (specify parameter to overwrite default) dbname dbusername dbpassword are required to set
tron-cli config --nettype private --fullhttpport 8500 --solhttpport 8600 --eventhttpport 8400 --fullrpcport 58500 --solrpcport 58600 --eventrpcport 58400 --enablememdb True --dbsyncmode async --saveintertx False --savehistorytx False --gridport 18891 --dbname events --dbusername tron --dbpassword 12345678
d. run full node
tron-cli run
e. run event node
tron-cli run --nodetype event
f. run tron-grid
tron-cli run --nodetype grid
a. install mongodb and create user & db
b. initilize
tron-cli init
c. config (specify parameter to overwrite default) dbname dbusername dbpassword are required to set
tron-cli config --nettype main --fullhttpport 8500 --solhttpport 8600 --eventhttpport 8400 --fullrpcport 58500 --solrpcport 58600 --eventrpcport 58400 --enablememdb True --dbsyncmode async --saveintertx False --savehistorytx False --gridport 18891 --dbname events --dbusername tron --dbpassword 12345678
d. run event node
tron-cli run --nodetype event
e. run tron-grid
tron-cli run --nodetype grid
-
How to fix "fail to build a wheel for psutil" error?
a. please check if you installed clang correctly, or install it using homebrew:
brew install --with-toolchain llvm
b. please check if you are using python 3.x
-
How to test in virtual environment?
a. create virtual environment
python3 -m venv venv
b. activate venv
. ./venv/bin/activate
c. install troncli in venv
pip install troncli
d. when done testing, or using the venv - to deactivate venv
deactivate