Tezosのベータネットノードの起動方法




Tezosのベータネットの起動方法を紹介します。
本構成は、AmazonのEC2におけるUbuntu Server 16.04 LTSでの動作を確認しています。

必要な準備

  • Ubuntu Server 16.04 LTSが実行できる環境
  • SSHでの接続環境
  • Ocamlの実行環境
  • ノードの起動手順

    TezosはOcamlという言語を利用しています。
    そのため、Opamという統合パッケージをインストールする必要があります。

    事前準備

    まず、Opamをインストールする前提となる環境を作ります。
    Ubuntuでアカウントを作成し、環境準備をします。
    gitを最新化していないと後の工程でエラーになる場合があります。

    Opamのインストール

    それでは、OCamlのパッケージマネージャであるOpamをインストールしましょう。
    Tezosベータネットでは、Opamの4.06.1が必要です。(2018/7/19時点)

    次のコマンドを入力します。

    次に、Opamを初期化し、指定したバージョンにします。
    opam initの手順は完了するまでに時間がかかる場合があります。

    Tezosのクライアントセットアップ

    Tezosのクライアントをインストールしていきます。
    TezosのBetanetのソースコードを入手する必要があります。
    Gitリポジトリから最新版を入手します。

    次に、OCamlと依存関係があるパッケージをインストールしましょう。
    「リポジトリが見つかりません」というエラーは無視できます。

    注意
    うまくインストールできなかった場合、「opam update」し、再度Opamのバージョンを指定すると実行できる場合があります。
    また、root権限では「cpuid」でエラーが発生します。一般ユーザで実行してください。

    その後、バイナリをコンパイルする必要があります。
    環境をもう一度更新して、正しいopam設定を実行していることを確認します。

    Tezosのソースコードをコンパイルして使用できるようになりました。
    Tezosのコマンドラインインターフェイスを使い始めることができます。

    ベータネットでのノード生成

    それでは、ノードを生成します。
    ベータネットでは、ノードIDを生成する際に使用される「difficulty」は26がデフォルトのようです。

    ノードを実行します。RPCインターフェイスにアクセスできるように接続を開きます。

    正常終了した場合、ベータネット上でノードは実行されている状態です。
    ノードがブロックチェーン全体を同期させるまでには時間がかかることに注意してください。

    進行状況を確認するには、これまでに知られているヘッドブロックを示す次のコマンドを実行してください。
    このコマンドはノードが完全に同期したときに終了します。

    正常に実行できると、以下のように同期中であることが確認できます。

    ウォレットの残高を確認する

    正常に実行できると、以下のようにベータネットである旨の注意が表示されます。

    応答は、ウォレット残高の数値が返ってきます。

    コマンド一覧

    こっこ
    Tezosのベータネットの起動方法を紹介しました。
    皆さんもTezosのノードを起動してみてくださいね。
    補足
    Tezosは現在、ベータネットで運用されています。
    そのため、アップデート等の理由で、上記の設定では正常に動作しない可能性があります。
    最新の情報は、TezosオフィシャルサイトのGitlabを参照してください。

    終わりに

    本記事は、Tezosに興味を持ち、実際に自分のPCでTezosに触れてみようと思う人が増えるといいなと思って書きました。
    Tezosがどのような仮想通貨であるのかを理解する手助けになれば幸いです。

    デリゲートサービスを提供してみようと思う方へ

    AWS上でノードを起動できますので、国産で高セキュリティなサービスを提供できます。
    最大手のデリゲートサービス提供者であるTezos.communityのノードもAWS上で動作しています。
    ぜひ本記事を参考にしてください。

    スマートコントラクトを書いてみようと思う方へ

    Tezosは日本語情報が少なく、Dappを開発することに躊躇されていた方もいると思います。
    日本の技術者は英語という壁があるために世界に対して遅れをとっています。
    ぜひ、実際にノードを動かして、Tezosの関連アプリを開発してみてください。

    もし、アプリ開発において本記事が参考になったのであれば、当サイトを参照先として記載頂けると嬉しいです。

    この記事が参考になった方へ

    本記事が参考になった方は、よろしければ、Tezzie(Tez)の寄付をお願いします。

    tz1Z9pjvYZmJn8rJX67zrTiVqXuJE2zqNTqb