なぜローカルセットアップを使うのか?
Solana プログラムの delegation やリアルタイム挙動をテストする際には、素早いフィードバックループ が重要です。 ローカル Ephemeral Rollup Validator を動かすことで、次のことが可能になります。- ネットワーク遅延やレート制限なしで delegation や挙動を素早く確認
- Solana runtime の取引をローカルでシミュレート
- 自分の用途に合わせて validator 構成を調整
クイックスタート: ローカル Ephemeral Validator
Anchor と Native Rust の delegation およびテストスクリプトを確認できます。Anchor
Anchor プログラムと統合する
Native Rust
Native Rust プログラムと統合する
ローカルセットアップの選択肢
Ephemeral Rollups はローカルで次の 3 通りの方法で実行できます。mb-test-validatorをベースレイヤーにし、ローカルephemeral-validatorを組み合わせた完全ローカル構成- ベースレイヤーの代替としてローカル Surfpool を使いつつ、rollup 自体もローカルで動かす構成
- ローカル
ephemeral-validatorを Devnet などの公開ベースレイヤーに直接接続する構成
重要: 正しいバリデータ ID でプログラムをアップグレードする
ローカル ER バリデータを使う場合は、アカウントが委任されるベースレイヤーに接続してください。特定の ER バリデータ ID に PDA を委任するなら、commit と undelegation がベースレイヤーで正しく完了するよう、プログラム内の delegation 設定も更新してください。これらの公開バリデータは開発用として利用できます。委任命令には、 対象となる ER バリデータを必ず追加してください。
メインネット- アジア (as.magicblock.app):
MAS1Dt9qreoRMQ14YQuhg8UTZMMzDdKhmkZMECCzk57 - EU (eu.magicblock.app):
MEUGGrYPxKk17hCr7wpT6s8dtNokZj5U2L57vjYMS8e - 米国 (us.magicblock.app):
MUS3hc9TCw4cGC12vHNoYcCGzJG1txjgQLZWVoeNHNd - TEE (mainnet-tee.magicblock.app):
MTEWGuqxUpYZGFJQcp8tLN7x5v9BSeoFHYWQQ3n3xzo
- アジア (devnet-as.magicblock.app):
MAS1Dt9qreoRMQ14YQuhg8UTZMMzDdKhmkZMECCzk57 - EU (devnet-eu.magicblock.app):
MEUGGrYPxKk17hCr7wpT6s8dtNokZj5U2L57vjYMS8e - 米国 (devnet-us.magicblock.app):
MUS3hc9TCw4cGC12vHNoYcCGzJG1txjgQLZWVoeNHNd - TEE (devnet-tee.magicblock.app):
FnE6VJT5QNZdedZPnCoLsARgBwoE6DeJNjBs2H1gySXA
- ローカル ER (localhost:7799):
mAGicPQYBMvcYveUZA5F5UNNwyHvfYh5xkLS2Fr1mev
- 完全ローカル
- Surfpool
- Devnet
ローカル Solana ベースレイヤーを起動
mb-test-validator は完全ローカル構成のベースレイヤーとして使えるローカル Solana validator を起動します。http://localhost:8899、WebSocket に ws://localhost:8900 を使います。ローカルで VRF Oracle を動かす
VRF をエンドツーエンドでテストしたい場合は、ローカルのvrf-oracle をローカルテストキューに接続して実行します。

