Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >仅使用toml配置文件在-testnet模式下运行geth。

仅使用toml配置文件在-testnet模式下运行geth。
EN

Ethereum用户
提问于 2018-02-06 13:05:03
回答 1查看 1.5K关注 0票数 0

我正在使用Geth配置文件(*.toml)来管理我的专用网络节点的配置。命令geth --config=config/.toml用于在每个堆栈(dev、prod等)上运行节点。

prod堆栈是针对主Ethereum网络运行的,在本例中,toml配置是显而易见的(主要是默认配置)。但是,对于dev堆栈,我需要提供一个在--testnet模式下运行D2的配置。

我应该给出哪种toml配置来运行节点,就好像它是用--testnet标志运行的一样?

我试着运行geth --testnet dumpconfig,但唯一的区别实际上是网络id,但它不足以针对Ropsten运行。关于如何在TOML文件中定义testnet配置的指针吗?谢谢。

EN

回答 1

Ethereum用户

回答已采纳

发布于 2018-02-06 23:43:55

如果您计划建立您自己的专用网络,我相信您最好从头开始,即使用您自己的创世纪文件和节点配置。但这并不是真正的协奏曲。

在放弃之前,我花了相当长的时间尝试config.toml文件的所有内容。一些参数(如networkId )已成功初始化,而其他参数则未应用(没有返回错误)。我想,尽管经历了很多考验,我还是错过了一些细节。

不过,我可以分享我所学到的,也许你会想出办法的。下面是我的config.toml文件的示例

代码语言:javascript
运行
AI代码解释
复制
[Eth]
NetworkId = 1515
[Node]
DataDir = '/home/jfo/privateNetworks/geth_PoA/node1'
HTTPHost = 'localhost'
HTTPPort = 8501
HTTPModules = ['personal','db','eth','net','web3']
    [Node.P2P]
    StaticNodes = ["enode://398e0338de829b887e050a1665bcaef2282ad7066054c8e1b8fe580e53e0fa36a8c62c4174b064a30f76ea26629317966a65100952d78e3ef5f6f176910fd322@127.0.0.1:30301"]
    ListenAddr = ':30311'

我从来没有能够让我的节点找到我的引导节点,并且我尝试了在p2p/server.go (link1link2)中定义的所有可能的参数。也许数据类型[]*discover.Node是导致问题的原因。

我怎么知道那些领域的?通过向geth源代码致敬。这个命令

代码语言:javascript
运行
AI代码解释
复制
~/Downloads/go-ethereum-master$ grep -rwn "type Config struct" --exclude-dir=vendor/

会把你还给你

代码语言:javascript
运行
AI代码解释
复制
p2p/server.go:60:type Config struct {
swarm/api/config.go:42:type Config struct {
console/console.go:52:type Config struct {
consensus/ethash/ethash.go:382:type Config struct {
core/vm/interpreter.go:30:type Config struct {
core/vm/runtime/runtime.go:34:type Config struct {
whisper/whisperv5/config.go:19:type Config struct {
whisper/whisperv6/config.go:20:type Config struct {
dashboard/config.go:29:type Config struct {
node/config.go:49:type Config struct {
eth/gasprice/gasprice.go:34:type Config struct {
eth/config.go:73:type Config struct {
eth/gen_config.go:19:   type Config struct {
eth/gen_config.go:60:   type Config struct {

例如,在cmd/geth/config.go (链接)中,您会发现

代码语言:javascript
运行
AI代码解释
复制
type gethConfig struct {
    Eth       eth.Config
    Shh       whisper.Config
    Node      node.Config
    Ethstats  ethstatsConfig
    Dashboard dashboard.Config
}

从那里您可以跳到eth/config.go (链接)找到关于[Eth]参数的信息。

代码语言:javascript
运行
AI代码解释
复制
type Config struct {
    // The genesis block, which is inserted if the database is empty.
    // If nil, the Ethereum main net block is used.
    Genesis *core.Genesis `toml:",omitempty"`

    // Protocol options
    NetworkId uint64 // Network ID to use for selecting peers to connect to
    SyncMode  downloader.SyncMode

    // Light client options
    LightServ  int `toml:",omitempty"` // Maximum percentage of time allowed for serving LES requests
    LightPeers int `toml:",omitempty"` // Maximum number of LES client peers

    // Database options
    SkipBcVersionCheck bool `toml:"-"`
    DatabaseHandles    int  `toml:"-"`
    DatabaseCache      int

    // Mining-related options
    Etherbase    common.Address `toml:",omitempty"`
    MinerThreads int            `toml:",omitempty"`
    ExtraData    []byte         `toml:",omitempty"`
    GasPrice     *big.Int

    // Ethash options
    Ethash ethash.Config

    // Transaction pool options
    TxPool core.TxPoolConfig

    // Gas Price Oracle options
    GPO gasprice.Config

    // Enables tracking of SHA3 preimages in the VM
    EnablePreimageRecording bool

    // Miscellaneous options
    DocRoot string `toml:"-"`
}

源代码中,也定义了对温带的参数。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/38794

复制
相关文章
TOML语言配置文件入门
最近在配置算子的时候,一直用着一种配置文件,而且有着自己奇奇怪怪的语法,起初没想多以为是公司自己独创的语言。后来经提醒发现是TOML语言,由于没怎么做过开发,之前从来没听说过这个语言,趁此机会了解学习一下。
Mirza Zhao
2023/10/26
1.9K2
使用 ethereum-package 部署以太坊POS节点
通过以上步骤,可以灵活部署一个多客户端、可观测性强的以太坊开发网络。更多配置细节可参考官方文档。
孟斯特
2025/03/24
821
使用 ethereum-package 部署以太坊POS节点
配置文件格式 TOML 快速上手
GitHub 联合创始人 Tom Preston-Werner 觉得 YAML 不够简洁优雅,如缩进要严格对齐,因此和其他几位开发者一起捣鼓了一个 TOML(Tom’s Obvious Minimal Language)。
恋喵大鲤鱼
2024/04/20
1.1K0
Python3 读取 toml 配置文件
     TOML是前GitHub CEO, Tom Preston-Werner,于2013年创建的语言,其目标是成为一个小规模的易于使用的语义化配置文件格式。TOML被设计为可以无二义性的转换为一个哈希表(Hash table)。
py3study
2020/01/03
3.1K0
剥开比原看代码01:初始化时生成的配置文件在哪儿
Gitee地址:https://gitee.com/BytomBlockchain/bytom
比原链Bytom
2018/09/20
4870
Docker Rootless 在非特权模式下运行 Docker
Rootless 模式允许以非 root 用户身份运行 Docker 守护进程(dockerd)和容器,以缓解 Docker 守护进程和容器运行时中潜在的漏洞。Rootless 模式是在 Docker v19.03 版本作为实验性功能引入的,在 Docker v20.10 版本 GA。
Se7en258
2021/12/31
7.7K0
Docker Rootless 在非特权模式下运行 Docker
以太坊多节点私有链部署
https://g2ex.github.io/2017/09/12/ethereum-guidance/
飞狗
2018/09/10
1.4K0
以太坊客户端Geth命令用法-参数详解
Geth在以太坊智能合约开发中最常用的工具(必备开发工具),一个多用途的命令行工具。 熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。 如果你还不知道geth是什么,请先阅读入门篇:以太坊是什么。 以下开始正文。 命令用法 geth [选项] 命令 [命令选项] [参数…] 版本: 1.7.3-stable 命令: account 管理账户 attach 启动交互式JavaSc
Tiny熊
2018/06/21
2.4K0
以太坊客户端Geth命令用法-参数详解
以下命令为系统级别的操作命令,比如管理账户,导入导出功能,本身并不会启动节点,只是在使用相应的功能。只有console命令和attach命令会进入js交互窗口。
程序新视界
2022/05/09
4K0
Geth 控制台使用及 Web3.js 使用实战
在开发以太坊去中心化应用,免不了和以太坊进行交互,那就离不开Web3。 Geth 控制台(REPL)实现了所有的web3 API及Admin API, 使用好 Geth 就是必修课。结合Geth命令用法阅读效果更佳。 写在前面 阅读本文之前,你需要对以太坊(区块链)有初步的了解,如果你不知道以太坊是什么,请先阅读以太坊是什么。 如果你在我的小专栏之外的地方阅读到本文,你可能只能阅读本文的节选,阅读完整全文请订阅小专栏区块链技术 geth控制台初探 - 启动、退出 安装参考智能合约开发环境搭建 最简单启动方
Tiny熊
2018/06/21
1.5K0
快速学习-用 Geth 搭建以太坊私链
安装 Geth 有很多种方式,这里主要就 Linux 环境给出两种:系统包管理器(apt-get)安装和源码安装。更加推荐大家用源码安装,在整个过程中可以看到 Geth 各组件的构建步骤。
cwl_java
2020/04/10
5.6K0
以太坊Geth几种同步模式
同步模式分类 –fast Enable fast syncing through state downloads –light Enable light client mode –syncmode f
程序新视界
2018/01/08
1.9K0
以太坊go-ethereum客户端(三)两种全节点启动模式
这篇博客介绍一下go-ethereum全节点的两种启动模式:主网络快速启动和测试网络快速启动。这也是客户端所提供的两种启动方式,直接拿来使用即可。下面具体介绍一下使用方法。
程序新视界
2022/05/06
5780
以太坊交互工具
以太坊提供了Geth客户端用于管理API,我们可以在终端输入geth help查看其具体使用方法:
Al1ex
2021/07/21
1.8K0
以太坊交互工具
2019-08-01 geth + Wagon环境运行ewasm
参考ewasm/testnet、2018-11-26 ewasm在以太坊私有链测试和2019-07-04 ewasm在以太坊私有链测试(3)
oracle3
2022/04/22
1830
Geth私链的多节点运行「建议收藏」
前一阵分别介绍了在Ubuntu和CentOS下搭建基于Geth的以太坊私链,这篇文章介绍如何搭建Geth多节点的运行。
全栈程序员站长
2022/11/09
1.8K0
以太坊环境搭建
以太坊作为一个开源的区块链平台,已经在区块链领域中占有重要地位,对于想要了解和使用以太坊的人来说搭建一个以太坊开发环境是必不可少的步骤,本文将介绍如何搭建以太坊开发环境帮助读者更好地理解以太坊的工作原理和开发流程
Al1ex
2023/08/10
5120
以太坊环境搭建
​【刘文彬】探路以太坊
原文链接:醒者呆的博客园,https://www.cnblogs.com/Evsward/p/ethereum.html
圆方圆学院
2018/12/24
6870
探路以太坊
关键字:以太坊,加密货币,crowdsale,geth,console,web3.js 以太坊简介 一句话简介:以太坊是一个基于功能齐全的编程语言构建的众多去中心化区块链应用的平台。 下面来解读一下这句话: 平台:首先以太坊是一个平台,这个平台上面有很多应用。 应用:这些应用是是去中心化的,基于区块链技术。所以这些应用可以实现永不停歇,因为它是分布式的,去中心化的,基于P2P网络的,这些应用被管理在以太坊钱包上面。 钱包:以太坊钱包,本质上以太坊钱包也是其中一个应用,它是一个网关,可以管理所有基
文彬
2018/05/03
1.8K0
Geth GraphQL使用说明
Geth V1.9.x增加了GraphQL的支持,开发者可以在经典的JSON RPC API和GraphQL API之间根据自己的去中心化应用具体需求进行选择。本文将介绍Geth 1.9新增GraphQL API的原因,并介绍其使用方法。
用户1408045
2019/10/10
1.7K0
Geth GraphQL使用说明

相似问题

geth来检查geth是在testnet还是mainnet中运行?

20

无法在geth windows上使用--testnet标志

10

无法在testnet上使用GETH解锁帐户

20

使用配置文件运行Geth

10

Geth Testnet同步永远需要

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文