次世代NEMではじめるブロックチェーンアプリケーション開発のメモ


手に入れちゃいましたよ!!

https://nemlog.nem.social/blog/31289

こちらで紹介されている「技術書典7」の記事を見て、どうしても「次世代NEMではじめる ブロックチェーンアプリケーション開発」が欲しい!!と思い、一時は「技術書典7」に参加しようかな!と思ったのですが、地方暮らしの私の身としては行き帰りの交通費で10万近く飛んでしまうので、、、やっぱ無理かなぁと諦めていました。

まぁダウンロード版もあるみたいだし、、、そっちにしようかなぁ。。。でも製本版手に入れたい!、、、うーん。と悶々とした日々を送っていました。

そんなとき、職場の上司から、「甥っ子が東京にいるし、頼んでみてあげるよ」と言ってくださり、その甥っ子さんも「面白そうだから行ってもいいよ!」っと、、、

もうこれはお言葉に甘えて「次世代NEMではじめる ブロックチェーンアプリケーション開発」をゲットしてもらうしかない!!と思い、お願いしちゃいました\(^o^)/

そして、待ちに待った週明けの今日、、、なんと「次世代NEMではじめる ブロックチェーンアプリケーション開発」をゲットしてくれた上司の甥っ子が地方の私の職場まで届けてくれるというサプライズ!!!!

(ホントは旅行?のついでに寄ってくれたみたいです)

いや~感謝・感激!雨あられ状態ですヨ(´・ω・`)(笑)

この場を借りて「本当にありがとうございます!」(見てないか😅)

とまぁここまでは事の顛末です(´・ω・`)

こっから本題。

なかなか、本業が忙しくて作業時間が取れず、やりたいけどできない状態だったので、「このままではイカン」と思いどうにか時間を作って、まず第1章をやってみました。

これはその時のメモです。

えー、最後まで読んで頂くとわかるのですが、一応先に結果を言っておくと、私の環境では正常に起動しませんでした。

正直、なぜ起動しないかは不明なのですが、どうも、各種コンテナ起動時にディレクトリのマウントに失敗しているようです。

詳しくは後述しますので、もし興味がある方は最後までご覧ください。

それではまず、私のPC環境です。

・Windows 10 Home

CPU:Core i7

メモリ:16G

・Docker(DockerToolboxを使用)


$ docker -v
Docker version 18.03.0-ce, build 0520e24302

・Docker Compose


$ docker-compose -vaersion
docker-compose version 1.20.1, build 5d8c71b2

dockerやdocker-composeは以前からちょっと使っていたので、既にインストールしてあったのでその環境を使用しています。

私のPCはwindows10 Homeなので、dockerを使う場合はDockerToolboxを利用する必要があります。

DockerToolboxのインストールについては、そんなに躓くところもないですし、ネットにも記事が沢山ありますので、詳しいことはそちらにおまかせします。

私の場合、Node.jsのバージョン管理にはnodistを使っています。今回のNode.jsの指定がv10.15.3となっているので、まずは下記のコマンドでNode.jsのバージョンを変更しておきます。


#v10.15.3を指定してインストール
$ nodist v10.15.3
v10.15.3
Installing 10.15.3
10.15.3 [===============] 23873/23873 KiB 100% 0.0s
Installation successful.

#使用するバージョンを指定
$ nodist v10.15.3
v10.15.3
v10.15.3 (global)

#確認
$ node -v
v10.15.3

以上で、基本的な準備ができましたので、本の手順に沿って、nem2-cliのインストールを行って、gitから「catapult-service-bootstrap」のダウンロードを行いブロックチェーンネットワークの立ち上げを行いました。

ところが、ここで予期せぬことが、、、

・起動しない

原因は正直明確ではないですが、ログを見るとどうも、コンテナでのディレクトリのマウントがうまくいっていないようです。


setup-network_1 | ash: /bin-mount/wait: not found
store-addresses_1 | ash: /bin-mount/wait: not found
api-node-broker-0_1 | bash: /bin-mount/wait: No such file or directory
generate-raw-addresses_1 | bash: /bin-mount/generate-raw-addresses-if-needed: No such file or directory

なぜ、ディレクトリのマウントが正常にできないのかがわからなく、バーチャルボックスのバージョンをあげてみたり、最新のリポジトリからcatapult-service-bootstrapをクローンしてきて立ち上げてみたりしたのですが、一向に起動できないので、Windows10Homeでは起動できないのかなぁと思っています。

この問題を解決しようとかなり時間を使ってしまったのですが、何をやってみててもうまくいかないので、いまちょっと諦め気味です。

ちょうど、手元にもう一台PCがあり、そちらにはCentOSをインストールして使っていますので、今後はそっちで環境を整えてやってみようかと思っています。

また、他の方の情報ではPCのスペックが足りないため、ローカルではDockerの構築に失敗してしまうということもあるそうです。

私の場合、DockerToolboxを使っての環境構築でした。もし、同じ環境でうまくいっている人がおられたらコメントいただけると幸いです。

Windows10Homeでは残念ながら起動できなかったので、CentOSでの環境が整ったら再度、挑戦して記事にしたいと思っています。


日本で一番簡単にビットコインが買える取引所 coincheck bitcoin