V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gitandgit
V2EX  ›  区块链

[stacks 区块链开发文档] 使用 Docker 配置并运行 stacks 区块链本地 testnet 测试网络节点

  •  
  •   gitandgit · 2021-08-13 18:48:56 +08:00 · 560 次点击
    这是一个创建于 1197 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://docs.stacks.co/understand-stacks/running-testnet-node

    英语原文链接

    介绍

    此过程演示了如何使用 Docker 镜像来运行 stacks 区块链本地测试网节点。

    此过程侧重于类 Unix 操作系统( Linux 和 MacOS )。此过程尚未在 Windows 上进行测试。

    前期准备:

    运行节点没有专门的硬件要求。用户已经成功地在 Raspberry Pi 和其他系统架构上运行节点。为了完成此过程,您必须在节点主机上安装以下软件:

    • Docker

    • curl

    • jq

    防火墙配置:

    为了使 API 节点服务正常工作,您必须配置任何网络防火墙规则以允许本节中讨论的端口上的流量。网络和防火墙配置的详细信息与您的机器和网络相关,因此不提供详细示例。以下端口必须在主机上打开:

    入口:

    • stacks-blockchain (open to 0.0.0.0/0):

    • 20443 TCP

    • 20444 TCP

    出口:

    • 18332

    • 18333

    • 20443-20444

    这些出口端口用于同步 stacks 区块链和比特币头部信息。如果它们未打开,则同步将失败。

    第一步:初始化配置

    为了运行 testnet 节点,您必须下载 Docker 镜像并创建一个目录结构来保存来自网络的持久数据。你可以使用以下命令下载并配置 Docker 镜像:

    docker pull blockstack/stacks-blockchain
    

    使用以下命令为服务数据创建目录结构:

    mkdir -p ./stacks-node/persistent-data/stacks-blockchain/testnet && cd stacks-node
    

    第二步:运行 stacks 区块链

    使用以下命令启动 stacks-区块链 容器:

    docker run -d --rm \
      --name stacks-blockchain \
      -v $(pwd)/persistent-data/stacks-blockchain/testnet:/root/stacks-node/data \
      -p 20443:20443 \
      -p 20444:20444 \
      blockstack/stacks-blockchain \
    /bin/stacks-node xenon
    

    您可以使用以下命令验证正在运行的 stacks 区块链容器:

    docker ps --filter name=stacks-blockchain
    

    第三步;验证服务

    最初的 burnchain 头同步可能需要几分钟,直到同步完成,以下命令才会起作用。

    验证 stacks 区块链 burnchain 头同步进度:

    docker logs stacks-blockchain
    

    终端输出应该类似于以下内容:

    INFO [1626290705.886954] [src/burnchains/bitcoin/spv.rs:926] [main] Syncing Bitcoin headers: 1.2% (8000 out of 2034380)
    INFO [1626290748.103291] [src/burnchains/bitcoin/spv.rs:926] [main] Syncing Bitcoin headers: 1.4% (10000 out of 2034380)
    INFO [1626290776.956535] [src/burnchains/bitcoin/spv.rs:926] [main] Syncing Bitcoin headers: 1.7% (12000 out of 2034380)
    

    要验证 stacks-blockchain 尖端高度是否在进行中,请使用以下命令:

    curl -sL localhost:20443/v2/info | jq
    

    如果实例正在运行,您的终端会输出类似于以下内容的信息:

    {
      "peer_version": 4207599105,
      "pox_consensus": "12f7fa85e5099755a00b7eaecded1aa27af61748",
      "burn_block_height": 2034380,
      "stable_pox_consensus": "5cc4e0403ff6a1a4bd17dae9600c7c13d0b10bdf",
      "stable_burn_block_height": 2034373,
      "server_version": "stacks-node 2.0.11.2.0-rc1 (develop:7b6d3ee+, release build, linux [x86_64])",
      "network_id": 2147483648,
      "parent_network_id": 118034699,
      "stacks_tip_height": 509,
      "stacks_tip": "e0ee952e9891709d196080ca638ad07e6146d4c362e6afe4bb46f42d5fe584e8",
      "stacks_tip_consensus_hash": "12f7fa85e5099755a00b7eaecded1aa27af61748",
      "genesis_chainstate_hash": "74237aa39aa50a83de11a4f53e9d3bb7d43461d1de9873f402e5453ae60bc59b",
      "unanchored_tip": "32bc86590f11504f17904ee7f5cb05bcf71a68a35f0bb3bc2d31aca726090842",
      "unanchored_seq": 0,
      "exit_at_block_height": null
    }
    

    如何停止测试网节点

    使用以下命令停止本地 testnet 节点:

    docker stop stacks-blockchain
    
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2757 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 09:39 · PVG 17:39 · LAX 01:39 · JFK 04:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.