背景
本文介绍使用 geth 搭建单节点私有链,使用 remix 在线 IDE 连接本地私有链部署和运行智能合约环境搭建步骤。
环境搭建
1. 下载 geth 程序
从官网下载 geth 可执行程序 https://geth.ethereum.org/downloads
本文安装的 geth 版本号为 1.14.3-stable:
% geth version
Geth
Version: 1.14.3-stable
Git Commit: ab48ba42f4f34873d65fd1737fabac5c680baff6
Git Commit Date: 20240509
Architecture: amd64
Go Version: go1.22.3
Operating System: darwin
GOPATH=/Users/qiushida/workspace/gopath
GOROOT=
2. 运行私有链节点
假定我们把链数据存储在家目录的 chain-data 下
% cd ~
% mkdir chain-data
% geth --dev --http --http.api eth,web3,net --http.corsdomain "https://remix.ethereum.org" --datadir chain-data
以 dev 模式启动开发环境私有单节点链:
3. 使用 remix 部署智能合约
登录 remix 平台,地址 https://remix.ethereum.org/
编写如下智能合约 hello.sol (仅用于测试)
pragma solidity >=0.4.22 <0.9.0;
contract hello {
string public Msg;
constructor() public {
Msg = "hello world";
}
}
按照下图所示,编译该智能合约
点击「部署」图标,选择自定义环境
在弹出的界面,确认连接地址是本地启动的 geth 节点监听地址,默认即为 http://127.0.0.1:8545
点击 OK 保存
选择默认账户,设置 gas 费,点击 Deploy 按钮,部署合约
可以看到类似如下输出,表明合约部署成功(部署合约可能需要等待约 1 分钟时间,看你的节点执行效率)
部署完成后,可以看到已经部署的合约地址(如果等待很长时间还没有看到部署成功,可以尝试多 Deploy 触发几次),之后可以查看 Msg 存储的内容