TRX节点部署

2024-04-12 04:04
文章标签 部署 节点 trx

本文主要是介绍TRX节点部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安装说明

安装版本:4.7.4

安装目录:/data/docker-compose/trx
配置文件路径:/data/docker-compose/trx/config.conf
节点data数据:/data/docker-compose/trx/output-directory

安装方式:Dockerfile+docker+docker-compose

安装环境:系统:ubuntu 20.04(BCH共享机器)

CPU:8核
内存:32G
硬盘:2T
1、下载TRX对应的java程序包
wget https://github.com/tronprotocol/java-tron/releases/download/GreatVoyage-v4.7.4/FullNode.jar
2、创建配置文件
~# mkdir /data/ && cd /data
~# vim config.json
net {type = mainnet# type = testnet
}storage {# Directory for storing persistent datadb.version = 2,db.engine = "LEVELDB",db.sync = false,db.directory = "database",index.directory = "index",transHistory.switch = "on",# You can custom these 14 databases' configs:# account, account-index, asset-issue, block, block-index,# block_KDB, peers, properties, recent-block, trans,# utxo, votes, witness, witness_schedule.# Otherwise, db configs will remain default and data will be stored in# the path of "output-directory" or which is set by "-d" ("--output-directory").# Attention: name is a required field that must be set !!!properties = [
//    {
//      name = "account",
//      path = "storage_directory_test",
//      createIfMissing = true,
//      paranoidChecks = true,
//      verifyChecksums = true,//      compressionType = 1,        // compressed with snappy//      blockSize = 4096,           // 4  KB =         4 * 1024 B//      writeBufferSize = 10485760, // 10 MB = 10 * 1024 * 1024 B//      cacheSize = 10485760,       // 10 MB = 10 * 1024 * 1024 B//      maxOpenFiles = 100//    },
//    {
//      name = "account-index",
//      path = "storage_directory_test",
//      createIfMissing = true,
//      paranoidChecks = true,
//      verifyChecksums = true,//      compressionType = 1,        // compressed with snappy//      blockSize = 4096,           // 4  KB =         4 * 1024 B//      writeBufferSize = 10485760, // 10 MB = 10 * 1024 * 1024 B//      cacheSize = 10485760,       // 10 MB = 10 * 1024 * 1024 B//      maxOpenFiles = 100//    },{name = "DelegatedResource",maxOpenFiles = 100},{name = "DelegatedResourceAccountIndex",maxOpenFiles = 100},{name = "IncrementalMerkleTree",maxOpenFiles = 100},{name = "IncrementalMerkleVoucher",maxOpenFiles = 100},{name = "abi",maxOpenFiles = 100},{name = "account",maxOpenFiles = 100},{name = "account-asset-issue",maxOpenFiles = 100},{name = "account-index",maxOpenFiles = 100},{name = "account-trace",maxOpenFiles = 100},{name = "accountTrie",maxOpenFiles = 100},{name = "accountid-index",maxOpenFiles = 100},{name = "asset-issue",maxOpenFiles = 100},{name = "asset-issue-v2",maxOpenFiles = 100},{name = "balance-trace",maxOpenFiles = 100},{name = "block",maxOpenFiles = 100},{name = "block-index",maxOpenFiles = 100},{name = "block_KDB",maxOpenFiles = 100},{name = "code",maxOpenFiles = 100},{name = "common",maxOpenFiles = 100},{name = "common-database",maxOpenFiles = 100},{name = "contract",maxOpenFiles = 100},{name = "delegation",maxOpenFiles = 100},{name = "exchange",maxOpenFiles = 100},{name = "exchange-v2",maxOpenFiles = 100},{name = "info",maxOpenFiles = 100},{name = "market_account",maxOpenFiles = 100},{name = "market_order",maxOpenFiles = 100},{name = "market_pair_price_to_order",maxOpenFiles = 100},{name = "market_pair_to_price",maxOpenFiles = 100},{name = "nullifier",maxOpenFiles = 100},{name = "pbft-sign-data",maxOpenFiles = 100},{name = "peers",maxOpenFiles = 100},{name = "properties",maxOpenFiles = 100},{name = "proposal",maxOpenFiles = 100},{name = "recent-block",maxOpenFiles = 100},{name = "storage-row",maxOpenFiles = 100},{name = "tmp",maxOpenFiles = 100},{name = "trans",maxOpenFiles = 100},{name = "trans-cache",maxOpenFiles = 100},{name = "transactionHistoryStore",maxOpenFiles = 100},{name = "transactionRetStore",maxOpenFiles = 100},{name = "tree-block-index",maxOpenFiles = 100},{name = "utxo",maxOpenFiles = 100},{name = "votes",maxOpenFiles = 100},{name = "witness",maxOpenFiles = 100},{name = "witness_schedule",maxOpenFiles = 100},{name = "zkProof",maxOpenFiles = 100}]needToUpdateAsset = true//dbsettings is needed when using rocksdb as the storage implement (db.version=2 and db.engine="ROCKSDB").//we'd strongly recommend that do not modify it unless you know every item's meaning clearly.dbSettings = {levelNumber = 7//compactThreads = 32blocksize = 64  // n * KBmaxBytesForLevelBase = 256  // n * MBmaxBytesForLevelMultiplier = 10level0FileNumCompactionTrigger = 4targetFileSizeBase = 256  // n * MBtargetFileSizeMultiplier = 1}//backup settings when using rocks db as the storage implement (db.version=2 and db.engine="ROCKSDB").//if you want to use the backup plugin, please confirm set the db.version=2 and db.engine="ROCKSDB" above.backup = {enable = false  // indicate whether enable the backup pluginpropPath = "prop.properties" // record which bak directory is validbak1path = "bak1/database" // you must set two backup directories to prevent application halt unexpected(e.g. kill -9).bak2path = "bak2/database"frequency = 10000   // indicate backup db once every 10000 blocks processed.}
}node.discovery = {enable = truepersist = truebind.ip = ""external.ip = null
}node.backup {port = 10001# my priority, each member should use different prioritypriority = 8# peer's ip list, can't contain minemembers = [# "ip",# "ip"]
}node {# trust node for solidity node# trustNode = "ip:port"trustNode = "127.0.0.1:50051"# expose extension api to public or notwalletExtensionApi = truelisten.port = 18888connection.timeout = 2tcpNettyWorkThreadNum = 0udpNettyWorkThreadNum = 1# Number of validate sign thread, default availableProcessors / 2# validateSignThreadNum = 16connectFactor = 0.3activeConnectFactor = 0.1maxActiveNodes = 30maxActiveNodesWithSameIp = 2maxHttpConnectNumber = 50minParticipationRate = 15# check the peer data transfer ,disconnect factordisconnectNumberFactor = 0.4maxConnectNumberFactor = 0.8receiveTcpMinDataLength = 2048isOpenFullTcpDisconnect = truep2p {version = 11111 # 11111: mainnet; 20180622: testnet}active = [# Active establish connection in any case# Sample entries:# "ip:port",# "ip:port"]passive = [# Passive accept connection in any case# Sample entries:# "ip:port",# "ip:port"]fastForward = ["100.26.245.209:18888","15.188.6.125:18888"]http {fullNodePort = 18090solidityPort = 8091}rpc {port = 50051#solidityPort = 50061# Number of gRPC thread, default availableProcessors / 2# thread = 16# The maximum number of concurrent calls permitted for each incoming connection# maxConcurrentCallsPerConnection =# The HTTP/2 flow control window, default 1MB# flowControlWindow =# Connection being idle for longer than which will be gracefully terminatedmaxConnectionIdleInMillis = 60000# Connection lasting longer than which will be gracefully terminated# maxConnectionAgeInMillis =# The maximum message size allowed to be received on the server, default 4MB# maxMessageSize =# The maximum size of header list allowed to be received, default 8192# maxHeaderListSize =# Transactions can only be broadcast if the number of effective connections is reached.minEffectiveConnection = 1}# number of solidity thread in the FullNode.# If accessing solidity rpc and http interface timeout, could increase the number of threads,# The default value is the number of cpu cores of the machine.#solidity.threads = 8# Limits the maximum percentage (default 75%) of producing block interval# to provide sufficient time to perform other operations e.g. broadcast block# blockProducedTimeOut = 75# Limits the maximum number (default 700) of transaction from network layer# netMaxTrxPerSecond = 700
}seed.node = {# List of the seed nodes# Seed nodes are stable full nodes# example:# ip.list = [#   "ip:port",#   "ip:port"# ]ip.list = ["3.225.171.164:18888","52.53.189.99:18888","18.196.99.16:18888","34.253.187.192:18888","18.133.82.227:18888","35.180.51.163:18888","54.252.224.209:18888","18.228.15.36:18888","52.15.93.92:18888","34.220.77.106:18888","13.127.47.162:18888","13.124.62.58:18888","13.229.128.108:18888","35.182.37.246:18888","34.200.228.125:18888","18.220.232.201:18888","13.57.30.186:18888","35.165.103.105:18888","18.184.238.21:18888","34.250.140.143:18888","35.176.192.130:18888","52.47.197.188:18888","52.62.210.100:18888","13.231.4.243:18888","18.231.76.29:18888","35.154.90.144:18888","13.125.210.234:18888","13.250.40.82:18888","35.183.101.48:18888"]
}genesis.block = {# Reserve balanceassets = [{accountName = "Zion"accountType = "AssetIssue"address = "TLLM21wteSPs4hKjbxgmH1L6poyMjeTbHm"balance = "99000000000000000"},{accountName = "Sun"accountType = "AssetIssue"address = "TXmVpin5vq5gdZsciyyjdZgKRUju4st1wM"balance = "0"},{accountName = "Blackhole"accountType = "AssetIssue"address = "TLsV52sRDL79HXGGm9yzwKibb6BeruhUzy"balance = "-9223372036854775808"}]witnesses = [{address: THKJYuUmMKKARNf7s2VT51g5uPY6KEqnat,url = "http://GR1.com",voteCount = 100000026},{address: TVDmPWGYxgi5DNeW8hXrzrhY8Y6zgxPNg4,url = "http://GR2.com",voteCount = 100000025},{address: TWKZN1JJPFydd5rMgMCV5aZTSiwmoksSZv,url = "http://GR3.com",voteCount = 100000024},{address: TDarXEG2rAD57oa7JTK785Yb2Et32UzY32,url = "http://GR4.com",voteCount = 100000023},{address: TAmFfS4Tmm8yKeoqZN8x51ASwdQBdnVizt,url = "http://GR5.com",voteCount = 100000022},{address: TK6V5Pw2UWQWpySnZyCDZaAvu1y48oRgXN,url = "http://GR6.com",voteCount = 100000021},{address: TGqFJPFiEqdZx52ZR4QcKHz4Zr3QXA24VL,url = "http://GR7.com",voteCount = 100000020},{address: TC1ZCj9Ne3j5v3TLx5ZCDLD55MU9g3XqQW,url = "http://GR8.com",voteCount = 100000019},{address: TWm3id3mrQ42guf7c4oVpYExyTYnEGy3JL,url = "http://GR9.com",voteCount = 100000018},{address: TCvwc3FV3ssq2rD82rMmjhT4PVXYTsFcKV,url = "http://GR10.com",voteCount = 100000017},{address: TFuC2Qge4GxA2U9abKxk1pw3YZvGM5XRir,url = "http://GR11.com",voteCount = 100000016},{address: TNGoca1VHC6Y5Jd2B1VFpFEhizVk92Rz85,url = "http://GR12.com",voteCount = 100000015},{address: TLCjmH6SqGK8twZ9XrBDWpBbfyvEXihhNS,url = "http://GR13.com",voteCount = 100000014},{address: TEEzguTtCihbRPfjf1CvW8Euxz1kKuvtR9,url = "http://GR14.com",voteCount = 100000013},{address: TZHvwiw9cehbMxrtTbmAexm9oPo4eFFvLS,url = "http://GR15.com",voteCount = 100000012},{address: TGK6iAKgBmHeQyp5hn3imB71EDnFPkXiPR,url = "http://GR16.com",voteCount = 100000011},{address: TLaqfGrxZ3dykAFps7M2B4gETTX1yixPgN,url = "http://GR17.com",voteCount = 100000010},{address: TX3ZceVew6yLC5hWTXnjrUFtiFfUDGKGty,url = "http://GR18.com",voteCount = 100000009},{address: TYednHaV9zXpnPchSywVpnseQxY9Pxw4do,url = "http://GR19.com",voteCount = 100000008},{address: TCf5cqLffPccEY7hcsabiFnMfdipfyryvr,url = "http://GR20.com",voteCount = 100000007},{address: TAa14iLEKPAetX49mzaxZmH6saRxcX7dT5,url = "http://GR21.com",voteCount = 100000006},{address: TBYsHxDmFaRmfCF3jZNmgeJE8sDnTNKHbz,url = "http://GR22.com",voteCount = 100000005},{address: TEVAq8dmSQyTYK7uP1ZnZpa6MBVR83GsV6,url = "http://GR23.com",voteCount = 100000004},{address: TRKJzrZxN34YyB8aBqqPDt7g4fv6sieemz,url = "http://GR24.com",voteCount = 100000003},{address: TRMP6SKeFUt5NtMLzJv8kdpYuHRnEGjGfe,url = "http://GR25.com",voteCount = 100000002},{address: TDbNE1VajxjpgM5p7FyGNDASt3UVoFbiD3,url = "http://GR26.com",voteCount = 100000001},{address: TLTDZBcPoJ8tZ6TTEeEqEvwYFk2wgotSfD,url = "http://GR27.com",voteCount = 100000000}]timestamp = "0" #2017-8-26 12:00:00parentHash = "0xe58f33f9baf9305dc6f82b9f1934ea8f0ade2defb951258d50167028c780351f"
}// Optional.The default is empty.
// It is used when the witness account has set the witnessPermission.
// When it is not empty, the localWitnessAccountAddress represents the address of the witness account,
// and the localwitness is configured with the private key of the witnessPermissionAddress in the witness account.
// When it is empty,the localwitness is configured with the private key of the witness account.//localWitnessAccountAddress =localwitness = [d83523eb4646882ff7a36cff93084d49acbb841df76f84f3b26dcd47df6fae12
]#localwitnesskeystore = [
#  "localwitnesskeystore.json"
#]block = {needSyncCheck = truemaintenanceTimeInterval = 21600000proposalExpireTime = 259200000 // 3 day: 259200000(ms)
}# Transaction reference block, default is "head", configure to "solid" can avoid TaPos error
# trx.reference.block = "head" // head;solid;# This property sets the number of milliseconds after the creation of the transaction that is expired, default value is  60000.
# trx.expiration.timeInMilliseconds = 60000vm = {supportConstant = trueminTimeRatio = 0.0maxTimeRatio = 5.0saveInternalTx = false# In rare cases, transactions that will be within the specified maximum execution time (default 10(ms)) are re-executed and packaged# longRunningTime = 10
}committee = {allowCreationOfContracts = 0  //mainnet:0 (reset by committee),test:1allowAdaptiveEnergy = 0  //mainnet:0 (reset by committee),test:1
}event.subscribe = {native = {useNativeQueue = true // if true, use native message queue, else use event plugin.bindport = 5555 // bind portsendqueuelength = 1000 //max length of send queue}path = "" // absolute path of pluginserver = "" // target server address to receive event triggersdbconfig="" // dbname|username|passwordcontractParse = true,topics = [{triggerName = "block" // block trigger, the value can't be modifiedenable = falsetopic = "block" // plugin topic, the value could be modified},{
[root@iZt4nfi77yw2dj1daja7e3Z data]# cat config.conf 
net {type = mainnet# type = testnet
}storage {# Directory for storing persistent datadb.version = 2,db.engine = "LEVELDB",db.sync = false,db.directory = "database",index.directory = "index",transHistory.switch = "on",# You can custom these 14 databases' configs:# account, account-index, asset-issue, block, block-index,# block_KDB, peers, properties, recent-block, trans,# utxo, votes, witness, witness_schedule.# Otherwise, db configs will remain default and data will be stored in# the path of "output-directory" or which is set by "-d" ("--output-directory").# Attention: name is a required field that must be set !!!properties = [
//    {
//      name = "account",
//      path = "storage_directory_test",
//      createIfMissing = true,
//      paranoidChecks = true,
//      verifyChecksums = true,//      compressionType = 1,        // compressed with snappy//      blockSize = 4096,           // 4  KB =         4 * 1024 B//      writeBufferSize = 10485760, // 10 MB = 10 * 1024 * 1024 B//      cacheSize = 10485760,       // 10 MB = 10 * 1024 * 1024 B//      maxOpenFiles = 100//    },
//    {
//      name = "account-index",
//      path = "storage_directory_test",
//      createIfMissing = true,
//      paranoidChecks = true,
//      verifyChecksums = true,//      compressionType = 1,        // compressed with snappy//      blockSize = 4096,           // 4  KB =         4 * 1024 B//      writeBufferSize = 10485760, // 10 MB = 10 * 1024 * 1024 B//      cacheSize = 10485760,       // 10 MB = 10 * 1024 * 1024 B//      maxOpenFiles = 100//    },{name = "DelegatedResource",maxOpenFiles = 100},{name = "DelegatedResourceAccountIndex",maxOpenFiles = 100},{name = "IncrementalMerkleTree",maxOpenFiles = 100},{name = "IncrementalMerkleVoucher",maxOpenFiles = 100},{name = "abi",maxOpenFiles = 100},{name = "account",maxOpenFiles = 100},{name = "account-asset-issue",maxOpenFiles = 100},{name = "account-index",maxOpenFiles = 100},{name = "account-trace",maxOpenFiles = 100},{name = "accountTrie",maxOpenFiles = 100},{name = "accountid-index",maxOpenFiles = 100},{name = "asset-issue",maxOpenFiles = 100},{name = "asset-issue-v2",maxOpenFiles = 100},{name = "balance-trace",maxOpenFiles = 100},{name = "block",maxOpenFiles = 100},{name = "block-index",maxOpenFiles = 100},{name = "block_KDB",maxOpenFiles = 100},{name = "code",maxOpenFiles = 100},{name = "common",maxOpenFiles = 100},{name = "common-database",maxOpenFiles = 100},{name = "contract",maxOpenFiles = 100},{name = "delegation",maxOpenFiles = 100},{name = "exchange",maxOpenFiles = 100},{name = "exchange-v2",maxOpenFiles = 100},{name = "info",maxOpenFiles = 100},{name = "market_account",maxOpenFiles = 100},{name = "market_order",maxOpenFiles = 100},{name = "market_pair_price_to_order",maxOpenFiles = 100},{name = "market_pair_to_price",maxOpenFiles = 100},{name = "nullifier",maxOpenFiles = 100},{name = "pbft-sign-data",maxOpenFiles = 100},{name = "peers",maxOpenFiles = 100},{name = "properties",maxOpenFiles = 100},{name = "proposal",maxOpenFiles = 100},{name = "recent-block",maxOpenFiles = 100},{name = "storage-row",maxOpenFiles = 100},{name = "tmp",maxOpenFiles = 100},{name = "trans",maxOpenFiles = 100},{name = "trans-cache",maxOpenFiles = 100},{name = "transactionHistoryStore",maxOpenFiles = 100},{name = "transactionRetStore",maxOpenFiles = 100},{name = "tree-block-index",maxOpenFiles = 100},{name = "utxo",maxOpenFiles = 100},{name = "votes",maxOpenFiles = 100},{name = "witness",maxOpenFiles = 100},{name = "witness_schedule",maxOpenFiles = 100},{name = "zkProof",maxOpenFiles = 100}]needToUpdateAsset = true//dbsettings is needed when using rocksdb as the storage implement (db.version=2 and db.engine="ROCKSDB").//we'd strongly recommend that do not modify it unless you know every item's meaning clearly.dbSettings = {levelNumber = 7//compactThreads = 32blocksize = 64  // n * KBmaxBytesForLevelBase = 256  // n * MBmaxBytesForLevelMultiplier = 10level0FileNumCompactionTrigger = 4targetFileSizeBase = 256  // n * MBtargetFileSizeMultiplier = 1}//backup settings when using rocks db as the storage implement (db.version=2 and db.engine="ROCKSDB").//if you want to use the backup plugin, please confirm set the db.version=2 and db.engine="ROCKSDB" above.backup = {enable = false  // indicate whether enable the backup pluginpropPath = "prop.properties" // record which bak directory is validbak1path = "bak1/database" // you must set two backup directories to prevent application halt unexpected(e.g. kill -9).bak2path = "bak2/database"frequency = 10000   // indicate backup db once every 10000 blocks processed.}
}node.discovery = {enable = truepersist = truebind.ip = ""external.ip = null
}node.backup {port = 10001# my priority, each member should use different prioritypriority = 8# peer's ip list, can't contain minemembers = [# "ip",# "ip"]
}node {# trust node for solidity node# trustNode = "ip:port"trustNode = "127.0.0.1:50051"# expose extension api to public or notwalletExtensionApi = truelisten.port = 18888connection.timeout = 2tcpNettyWorkThreadNum = 0udpNettyWorkThreadNum = 1# Number of validate sign thread, default availableProcessors / 2# validateSignThreadNum = 16connectFactor = 0.3activeConnectFactor = 0.1maxActiveNodes = 30maxActiveNodesWithSameIp = 2maxHttpConnectNumber = 50minParticipationRate = 15# check the peer data transfer ,disconnect factordisconnectNumberFactor = 0.4maxConnectNumberFactor = 0.8receiveTcpMinDataLength = 2048isOpenFullTcpDisconnect = truep2p {version = 11111 # 11111: mainnet; 20180622: testnet}active = [# Active establish connection in any case# Sample entries:# "ip:port",# "ip:port"]passive = [# Passive accept connection in any case# Sample entries:# "ip:port",# "ip:port"]fastForward = ["100.26.245.209:18888","15.188.6.125:18888"]http {fullNodePort = 18090solidityPort = 8091}rpc {port = 50051#solidityPort = 50061# Number of gRPC thread, default availableProcessors / 2# thread = 16# The maximum number of concurrent calls permitted for each incoming connection# maxConcurrentCallsPerConnection =# The HTTP/2 flow control window, default 1MB# flowControlWindow =# Connection being idle for longer than which will be gracefully terminatedmaxConnectionIdleInMillis = 60000# Connection lasting longer than which will be gracefully terminated# maxConnectionAgeInMillis =# The maximum message size allowed to be received on the server, default 4MB# maxMessageSize =# The maximum size of header list allowed to be received, default 8192# maxHeaderListSize =# Transactions can only be broadcast if the number of effective connections is reached.minEffectiveConnection = 1}# number of solidity thread in the FullNode.# If accessing solidity rpc and http interface timeout, could increase the number of threads,# The default value is the number of cpu cores of the machine.#solidity.threads = 8# Limits the maximum percentage (default 75%) of producing block interval# to provide sufficient time to perform other operations e.g. broadcast block# blockProducedTimeOut = 75# Limits the maximum number (default 700) of transaction from network layer# netMaxTrxPerSecond = 700
}seed.node = {# List of the seed nodes# Seed nodes are stable full nodes# example:# ip.list = [#   "ip:port",#   "ip:port"# ]ip.list = ["3.225.171.164:18888","52.53.189.99:18888","18.196.99.16:18888","34.253.187.192:18888","18.133.82.227:18888","35.180.51.163:18888","54.252.224.209:18888","18.228.15.36:18888","52.15.93.92:18888","34.220.77.106:18888","13.127.47.162:18888","13.124.62.58:18888","13.229.128.108:18888","35.182.37.246:18888","34.200.228.125:18888","18.220.232.201:18888","13.57.30.186:18888","35.165.103.105:18888","18.184.238.21:18888","34.250.140.143:18888","35.176.192.130:18888","52.47.197.188:18888","52.62.210.100:18888","13.231.4.243:18888","18.231.76.29:18888","35.154.90.144:18888","13.125.210.234:18888","13.250.40.82:18888","35.183.101.48:18888"]
}genesis.block = {# Reserve balanceassets = [{accountName = "Zion"accountType = "AssetIssue"address = "TLLM21wteSPs4hKjbxgmH1L6poyMjeTbHm"balance = "99000000000000000"},{accountName = "Sun"accountType = "AssetIssue"address = "TXmVpin5vq5gdZsciyyjdZgKRUju4st1wM"balance = "0"},{accountName = "Blackhole"accountType = "AssetIssue"address = "TLsV52sRDL79HXGGm9yzwKibb6BeruhUzy"balance = "-9223372036854775808"}]witnesses = [{address: THKJYuUmMKKARNf7s2VT51g5uPY6KEqnat,url = "http://GR1.com",voteCount = 100000026},{address: TVDmPWGYxgi5DNeW8hXrzrhY8Y6zgxPNg4,url = "http://GR2.com",voteCount = 100000025},{address: TWKZN1JJPFydd5rMgMCV5aZTSiwmoksSZv,url = "http://GR3.com",voteCount = 100000024},{address: TDarXEG2rAD57oa7JTK785Yb2Et32UzY32,url = "http://GR4.com",voteCount = 100000023},{address: TAmFfS4Tmm8yKeoqZN8x51ASwdQBdnVizt,url = "http://GR5.com",voteCount = 100000022},{address: TK6V5Pw2UWQWpySnZyCDZaAvu1y48oRgXN,url = "http://GR6.com",voteCount = 100000021},{address: TGqFJPFiEqdZx52ZR4QcKHz4Zr3QXA24VL,url = "http://GR7.com",voteCount = 100000020},{address: TC1ZCj9Ne3j5v3TLx5ZCDLD55MU9g3XqQW,url = "http://GR8.com",voteCount = 100000019},{address: TWm3id3mrQ42guf7c4oVpYExyTYnEGy3JL,url = "http://GR9.com",voteCount = 100000018},{address: TCvwc3FV3ssq2rD82rMmjhT4PVXYTsFcKV,url = "http://GR10.com",voteCount = 100000017},{address: TFuC2Qge4GxA2U9abKxk1pw3YZvGM5XRir,url = "http://GR11.com",voteCount = 100000016},{address: TNGoca1VHC6Y5Jd2B1VFpFEhizVk92Rz85,url = "http://GR12.com",voteCount = 100000015},{address: TLCjmH6SqGK8twZ9XrBDWpBbfyvEXihhNS,url = "http://GR13.com",voteCount = 100000014},{address: TEEzguTtCihbRPfjf1CvW8Euxz1kKuvtR9,url = "http://GR14.com",voteCount = 100000013},{address: TZHvwiw9cehbMxrtTbmAexm9oPo4eFFvLS,url = "http://GR15.com",voteCount = 100000012},{address: TGK6iAKgBmHeQyp5hn3imB71EDnFPkXiPR,url = "http://GR16.com",voteCount = 100000011},{address: TLaqfGrxZ3dykAFps7M2B4gETTX1yixPgN,url = "http://GR17.com",voteCount = 100000010},{address: TX3ZceVew6yLC5hWTXnjrUFtiFfUDGKGty,url = "http://GR18.com",voteCount = 100000009},{address: TYednHaV9zXpnPchSywVpnseQxY9Pxw4do,url = "http://GR19.com",voteCount = 100000008},{address: TCf5cqLffPccEY7hcsabiFnMfdipfyryvr,url = "http://GR20.com",voteCount = 100000007},{address: TAa14iLEKPAetX49mzaxZmH6saRxcX7dT5,url = "http://GR21.com",voteCount = 100000006},{address: TBYsHxDmFaRmfCF3jZNmgeJE8sDnTNKHbz,url = "http://GR22.com",voteCount = 100000005},{address: TEVAq8dmSQyTYK7uP1ZnZpa6MBVR83GsV6,url = "http://GR23.com",voteCount = 100000004},{address: TRKJzrZxN34YyB8aBqqPDt7g4fv6sieemz,url = "http://GR24.com",voteCount = 100000003},{address: TRMP6SKeFUt5NtMLzJv8kdpYuHRnEGjGfe,url = "http://GR25.com",voteCount = 100000002},{address: TDbNE1VajxjpgM5p7FyGNDASt3UVoFbiD3,url = "http://GR26.com",voteCount = 100000001},{address: TLTDZBcPoJ8tZ6TTEeEqEvwYFk2wgotSfD,url = "http://GR27.com",voteCount = 100000000}]timestamp = "0" #2017-8-26 12:00:00parentHash = "0xe58f33f9baf9305dc6f82b9f1934ea8f0ade2defb951258d50167028c780351f"
}// Optional.The default is empty.
// It is used when the witness account has set the witnessPermission.
// When it is not empty, the localWitnessAccountAddress represents the address of the witness account,
// and the localwitness is configured with the private key of the witnessPermissionAddress in the witness account.
// When it is empty,the localwitness is configured with the private key of the witness account.//localWitnessAccountAddress =localwitness = [d83523eb4646882ff7a36cff93084d49acbb841df76f84f3b26dcd47df6fae12
]#localwitnesskeystore = [
#  "localwitnesskeystore.json"
#]block = {needSyncCheck = truemaintenanceTimeInterval = 21600000proposalExpireTime = 259200000 // 3 day: 259200000(ms)
}# Transaction reference block, default is "head", configure to "solid" can avoid TaPos error
# trx.reference.block = "head" // head;solid;# This property sets the number of milliseconds after the creation of the transaction that is expired, default value is  60000.
# trx.expiration.timeInMilliseconds = 60000vm = {supportConstant = trueminTimeRatio = 0.0maxTimeRatio = 5.0saveInternalTx = false# In rare cases, transactions that will be within the specified maximum execution time (default 10(ms)) are re-executed and packaged# longRunningTime = 10
}committee = {allowCreationOfContracts = 0  //mainnet:0 (reset by committee),test:1allowAdaptiveEnergy = 0  //mainnet:0 (reset by committee),test:1
}event.subscribe = {native = {useNativeQueue = true // if true, use native message queue, else use event plugin.bindport = 5555 // bind portsendqueuelength = 1000 //max length of send queue}path = "" // absolute path of pluginserver = "" // target server address to receive event triggersdbconfig="" // dbname|username|passwordcontractParse = true,topics = [{triggerName = "block" // block trigger, the value can't be modifiedenable = falsetopic = "block" // plugin topic, the value could be modified},{triggerName = "transaction"enable = falsetopic = "transaction"},{triggerName = "contractevent"enable = falsetopic = "contractevent"},{triggerName = "contractlog"enable = falsetopic = "contractlog"},{triggerName = "solidity" // solidity block event trigger, the value can't be modifiedenable = true            // the default value is truetopic = "solidity"},{triggerName = "solidityevent"enable = falsetopic = "solidityevent"},{triggerName = "soliditylog"enable = falsetopic = "soliditylog"}]filter = {fromblock = "" // the value could be "", "earliest" or a specified block number as the beginning of the queried rangetoblock = "" // the value could be "", "latest" or a specified block number as end of the queried rangecontractAddress = ["" // contract address you want to subscribe, if it's set to "", you will receive contract logs/events with any contract address.]contractTopic = ["" // contract topic you want to subscribe, if it's set to "", you will receive contract logs/events with any contract topic.]}
}
3、启动节点
nohup java -Xmx16g -XX:+HeapDumpOnOutOfMemoryError -jar FullNode.jar  --witness  -c config.conf &>/dev/null &
4、节点验证
~# curl -X GET  http://127.0.0.1:8091/walletsolidity/getnowblock
查日志,检查节点运行情况
~# tail -100f logs/tron.log

这篇关于TRX节点部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/896051

相关文章

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server

C++链表的虚拟头节点实现细节及注意事项

《C++链表的虚拟头节点实现细节及注意事项》虚拟头节点是链表操作中极为实用的设计技巧,它通过在链表真实头部前添加一个特殊节点,有效简化边界条件处理,:本文主要介绍C++链表的虚拟头节点实现细节及注... 目录C++链表虚拟头节点(Dummy Head)一、虚拟头节点的本质与核心作用1. 定义2. 核心价值二

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

ubuntu16.04如何部署dify? 在Linux上安装部署Dify的技巧

《ubuntu16.04如何部署dify?在Linux上安装部署Dify的技巧》随着云计算和容器技术的快速发展,Docker已经成为现代软件开发和部署的重要工具之一,Dify作为一款优秀的云原生应用... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。它

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

SpringBoot配置Ollama实现本地部署DeepSeek

《SpringBoot配置Ollama实现本地部署DeepSeek》本文主要介绍了在本地环境中使用Ollama配置DeepSeek模型,并在IntelliJIDEA中创建一个Sprin... 目录前言详细步骤一、本地配置DeepSeek二、SpringBoot项目调用本地DeepSeek前言随着人工智能技