見出し画像

Hyperledger Iroha を学ぶ(3回目)Hyperledger Iroha のインストール

こんにちは。

このブログでは、ブロックチェーン関連を中心としたテック系の情報の紹介をしております。

この連載では、「Hyperledger Iroha」について、勉強してきます。

公式のドキュメントと、最近購入した参考書(※)の内容を参考に、簡単なサンプルシステムを少しずつ構築していきます。

※参考書はこちらです。

今回からは、実際にHyperledger Irohaの環境をインストールしていきます。

2つのDockerコンテナ

Hyperledger Irohaは2つのDockerコンテナで構成されます。

ひとつは「iroha」と、もうひとつは「some-postgres」です。

画像1

irohaコンテナは、Hyperledger Irohaプログラムを実行する役割を持っており、ブロックチェーン自体もこのコンテナに含まれています。

some-postgresコンテナには、その名の通り、「PostgresSQL」のデータベースが搭載され、ブロックチェーン以外のHyperledger Irohaに必要なユーザーの情報などが保存されています。

Dockcerのインストール

それでは環境構築を進めていきます。

構築する環境については前回の記事を参考にしてください。(こちら

ここからの手順は、Virtual Box上にUbuntuの仮想マシンが構築できている想定で進めていきます。

Ubuntuでターミナルを起動します。

curlコマンドをインストールします。

sudo apt install curl

Dockerのインストールに必要なモジュールをダウンロードします。​

sudo curl -fsSL get.docker.com -o get-docker.sh

Dockerのインストールを実行します。

sudo sh get-docker.sh

Dockerのバージョンを出力して、インストールができていることを確認します。

sudo docker -v

コンテナの構築

次にDocker上に、Hyperledger Iroha用のネットワークとコンテナを構築していきます。

まず、"iroha-network"という名前のネットワークを作成します。

sudo docker network create iroha-network

次に、ブロックチェーンを格納するためのボリュームを作成します。

sudo docker volume create blockstore

Postgressコンテナを"some-postgres"という名前で作成します。

sudo docker run -it -d --name some-postgres \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=mysecretpassword \
-p 5432:5432 \
--network=iroha-network \
postgres:9.5

次に、Hyperledger Irohaのコンテナの作成ですが、Hyperledger Irohaのコンテナはgithubから取得するため、先にgitを入手します。

sudo apt install git

gitコマンドで、Hyperledger Irohaのコンテナをコピーしてきます。

sudo git clone -b master https://github.com/hyperledger/iroha --depth=1

Hyperledger Irohaのコンテナを"iroha"という名前で作成します。

sudo docker run -it -d --name iroha \
-p 50051:50051 \
-v $(pwd)/iroha/example:/opt/iroha_data \
-v blockstore:/tmp/block_store \
--network=iroha-network \
--entrypoint=/bin/bash \
hyperledger/iroha:1.2.0

作成したコンテナをDockerのpsコマンドで確認します。

sudo docker ps

以下のように、作成したコンテナが表示されます。

CONTAINER ID   IMAGE                     COMMAND                  CREATED       STATUS         PORTS                                           NAMES
092d7f8e8540   hyperledger/iroha:1.2.0   "/bin/bash"              5 weeks ago   Up 5 seconds   0.0.0.0:50051->50051/tcp, :::50051->50051/tcp   iroha
dff326447ab2   postgres:9.5              "docker-entrypoint.s…"   5 weeks ago   Up 5 seconds   0.0.0.0:5432->5432/tcp, :::5432->5432/tcp       some-postgres

作成したコンテナは以下のコマンドで停止が出来ます。

sudo docker stop iroha some-postgres

今回は、Hyperledger Irohaの環境に必要な、PostgresコンテナとHyperledger Irohaコンテナの作成手順を紹介しました。

次回以降で、実際にHyperledger Irohaを捜査していく手順を紹介したいと思います。

おわり。

この記事が気に入ったらサポートをしてみませんか?