快速入口
查看适用于 Anchor 和 Native Rust 的程序与测试脚本:GitHub
Anchor 实现
GitHub
Native Rust 实现
本地设置选项
你可以通过三种方式在本地运行 Ephemeral Rollups:- 使用
mb-test-validator作为基础层并搭配本地ephemeral-validator的完整本地栈。 - 使用本地 Surfpool 作为基础层替代方案,同时仍在本地运行 rollup。
- 让本地
ephemeral-validator直接连接到如 Devnet 这样的公共基础层。
重要:使用正确的验证器身份升级程序
使用本地 ER 验证器时,应将其连接到账户发生委托的那个基础层。如果你将 PDA 委托给某个特定的 ER 验证器身份,请更新程序中的 delegation 配置,以确保 commit 和 undelegation 能在基础层上正确完成。这些公共验证器可用于开发环境。请确保在你的委托指令中添加对应的 ER 验证器:
主网- 亚洲 (as.magicblock.app):
MAS1Dt9qreoRMQ14YQuhg8UTZMMzDdKhmkZMECCzk57 - 欧盟 (eu.magicblock.app):
MEUGGrYPxKk17hCr7wpT6s8dtNokZj5U2L57vjYMS8e - 美国 (us.magicblock.app):
MUS3hc9TCw4cGC12vHNoYcCGzJG1txjgQLZWVoeNHNd - TEE (mainnet-tee.magicblock.app):
MTEWGuqxUpYZGFJQcp8tLN7x5v9BSeoFHYWQQ3n3xzo
- 亚洲 (devnet-as.magicblock.app):
MAS1Dt9qreoRMQ14YQuhg8UTZMMzDdKhmkZMECCzk57 - 欧盟 (devnet-eu.magicblock.app):
MEUGGrYPxKk17hCr7wpT6s8dtNokZj5U2L57vjYMS8e - 美国 (devnet-us.magicblock.app):
MUS3hc9TCw4cGC12vHNoYcCGzJG1txjgQLZWVoeNHNd - TEE (devnet-tee.magicblock.app):
MTEWGuqxUpYZGFJQcp8tLN7x5v9BSeoFHYWQQ3n3xzo
- 本地 ER (localhost:7799):
mAGicPQYBMvcYveUZA5F5UNNwyHvfYh5xkLS2Fr1mev
- 完整本地
- Surfpool
- Devnet
1
安装 Ephemeral Validator CLI
2
启动本地 Solana 基础层
mb-test-validator 会启动一个本地 Solana validator,可作为完整本地环境的基础层。http://localhost:8899 作为 RPC,ws://localhost:8900 作为 WebSocket 连接地址。3
在 localhost 上部署或升级程序
- Rust Native
- Anchor
4
启动本地 ephemeral validator
将本地 Ephemeral Rollup 连接到本地 Solana validator:
5
针对本地 rollup 运行测试
本地 rollup 的 RPC 地址为
http://localhost:7799,WebSocket 地址为 ws://localhost:7800。- Rust Native
- Anchor
在本地运行 VRF Oracle
如果你还需要端到端测试 VRF,可以让本地vrf-oracle 对接本地测试队列运行。
1
安装最新的 Ephemeral Validator CLI
2
启动本地 Solana validator
3
启动 ephemeral validator
4
启动本地 VRF 预言机
这个预言机会把请求加入本地测试队列:如果你的本地 validator 暴露了不同的 WebSocket 端口,请相应更新
WEBSOCKET_URL。
