コンテンツへスキップ
0%

Solana Devnetについて知っておくべきこと

Alchemy team headshot

執筆者 Alchemy

2022年7月21日 公開読了時間 1 分

Solanaは高速なトランザクション処理、低いトランザクションコスト、そして開発者に優しい環境を備えており、dApp開発者にもユーザーにも優れたチェーンです。Solana上での開発を始めたい方に向けて、この記事ではSolanaのDevnetについて説明します。Devnetは、Solanaのmainnetを模したテストネットワーク上でスマートコントラクトをテストするための、開発者にとって不可欠なリソースです。

クラスターとは何か

クラスターとは、ブロックチェーンに追加される予定の受信トランザクションの有効性を評価する役割を持つノードの集合です。

各クラスターには「リーダー」に指定されたノードが1つあり(リーダーはおよそ2日ごとに変わります)、どのトランザクションをブロックチェーンの台帳に追加すべきかを提案し、提案したトランザクションに自身の署名を付けます。クラスター内の他のノードは「バリデーター」であり、トランザクションが有効かどうかを再確認します。

Solana Devnetとは何か

Solana Devnetは、実際のSolanaネットワーク(つまりMainnet)の環境を再現した環境ですが、トランザクションの実行にはテスト用のSOLトークンを使用します。そのため、web3開発者はスマートコントラクトをテストするために実際のお金を使う必要がありません。

Solana Devnetは、開発者、ユーザー、バリデーターがリスクなくアプリケーションをテストできる、安全な実験場です。

Solana Devnet faucetとは何か

悪意のある行為者によるネットワークの混雑を防ぎつつ、ネットワークを無料で使えるようにするため、Solana Devnetはmainnetとは異なるトークンを使用しています。

Devnetトークンは、Solana Devnet faucetから、またはコマンドラインインターフェース(CLI)に入力する以下のairdropコマンドから取得できます。

Solana Devnet explorerとは何か

Solana Devnet explorerを使うと、web3開発者はdevnet上のあらゆるブロック、トランザクション、プログラム、トークンを検索できます。このツールは、開発者が自分のトランザクションに関する情報を取得したり、正常に動作しないトランザクションをデバッグしたり、プログラムの詳細を確認したりするのに役立ちます。

SolanaのTestnetとDevnetの違いは何か

SolanaのDevnetとSolana Testnetの違いは、TestnetがSolanaのコア開発チームがメインネットへの予定されたアップデートをテストするために使用するネットワークであるのに対し、Devnetは一般の人々が使用するためのテスト環境であるという点です。

Solana's Devnetへの接続方法

Solana's Devnetに接続する前に、ローカル環境に必須のSolana開発者ツールをインストールしておくことが重要です。ゼロから始める場合は、以下の手順で基本的なツールをインストールできます。

1. Solana tool suiteをインストールする

まず、Devnetに接続するためにSolana Tool Suiteが必要です。ツールスイートのインストール方法は、MacOS、Linux、Windowsのどのオペレーティングシステムを使用しているかによって異なります。それぞれの開発環境向けの手順は以下の通りです。

Macユーザー

オペレーティングシステムがMacOSまたはLinuxの場合は、お好きなターミナルアプリケーションを開き、以下のコマンドをコピー&ペーストしてください。

バージョン番号は、インストールしたい任意のバージョンに置き換えることができます。

Windowsユーザー

オペレーティングシステムがWindowsの場合は、代わりに以下をコマンドプロンプトにコピー&ペーストしてください。

以下のコマンドを実行して、Tool Suiteをインストールします。

2. Solanaのバージョンを確認する

どのオペレーティングシステムでも、この後は以下を実行して、目的のバージョンのSolanaがインストールされていることを再確認してください。

3. Devnetクラスターに接続する

最後に、以下のコマンドを実行してDevnetクラスターに接続すれば、Devnetへの接続は完了です。

SolanaのスマートコントラクトをDevnetにデプロイする方法

このチュートリアルでは、Solanaチームが開発したHelloWorldプログラムをデプロイします。このプログラムは、呼び出されたアカウントに対してカウントを作成し、そのアカウントに対してこれまでにこのプログラムが呼び出された回数を表します。

例えば、1回目の実行ではカウントが1に増加しますが、返される値は0です。2回目の実行では1が返され、カウントは2に増加します。

Solana Tool Suiteはすでにインストール済みなので、あとは以下の依存関係をインストールするだけです。

  1. NodeJS
  2. Rust
  3. Git

依存関係のインストールが完了したら、HelloWorldのリポジトリをクローンし、Solana's Devnetにデプロイするために必要な手順を進めていきます。

1. NodeJSをインストールする

NodeJSをインストールします(このチュートリアルにはv14以上が必要です)。お使いのオペレーティングシステムに合ったインストーラーを選択してください。

インストーラーを実行して表示される手順に従うと、NodeJSはターミナル内で以下のnodeコマンドを自動的に実行します。

2. Rustをインストールする

オペレーティングシステムがMacOS、Linux、その他のUnix系オペレーティングシステムの場合、コマンドラインの準備ができたら、このコマンドを実行してRustをインストールします。

Windowsでは、rustup-init.exeをダウンロードしてインストールしてください。

3. gitをインストールする

WindowsにGitをインストールするには、お使いのWindowsのバージョンに合ったインストーラーを選択し、指示に従ってください。

MacOSとLinuxにGitをインストールするには、まずお好みのターミナルで以下のコマンドを実行してHomebrewをインストールしてください。

続いて、ターミナルで以下のコマンドを実行し、HomebrewでGitをインストールします。

4. Solana HelloWorldリポジトリをクローンする

依存関係のインストールが完了したら、次に環境内でHelloWorldリポジトリをクローンします。

5. Devnetに接続する

以下のコマンドを実行して、Devnetクラスターに接続されているか再確認してください。

Devnetクラスターに接続されていない場合は、以下のコマンドでDevnetに接続してください。

6. キーペアを生成する

次に、公開鍵(ウォレットアドレス)と秘密のシードフレーズからなるキーペアを生成します。このキーペアにより、オンチェーンでアカウントを作成し、Solanaプログラムとやり取りできるようになります。

7. Devnet SOLトークンを取得する

Devnet上でプログラムを実行するには、Devnet SOLトークンが必要です。以下のコマンドでトークンをリクエストできます。

8. ビルドしてDevnetにデプロイする

次に、プログラムをビルドしてDevnetにデプロイします。

プログラムをビルドした際にコンソールから出力される内容の一番下に、プログラムをデプロイするためのコマンドが表示されているはずです。

見つからない場合は、以下のコマンドをコピー&ペーストして、プログラムをSolana's Devnetにデプロイしてください。

Solana上での開発を始める

Solana Devnetを使うことで、web3開発者は世界最高水準のパフォーマンスを誇るレイヤー1ブロックチェーンの1つの上にアプリを構築できます。開発を始めるには、Alchemy's Solana APIへのアクセスに登録してください

Background gradient

ブロックチェーンで魔法を生み出す

Alchemyは、最も強力なweb3開発者向けプロダクトとツールを、豊富なリソース、コミュニティ、そして卓越したサポートと組み合わせて提供します。