環境構築
vagrant
VirtualBox
Bitcoin
仮想通貨

ビットコインを仮想環境で動かしてみる(前編)

はじめに

 近頃仮想通貨が盛り上がりを見せている。自分もbitflyerでウォレットを作って1万円だけ入れて遊んだり、google先生に聞いたり、https://minergate.com でお手軽マイニングをしているが、まだまだ技術的に分からない部分がある。理解を深めるために、ビットコインを自分の環境内のみで動かしたい。

 今回は手始めにVirtualBox+vagrantで仮想ノードを作り、その上でビットコインのマイニングプログラムを動かすところまでのメモを書いておく。

 この環境構築ができれば実際に動いているブロックチェーンに参加できるので、ビットコインをマイニングしたいという人もぜひ。

 VirtualBoxとvagrantの関係が分からない人は「ここ」を見ると理解し易いのでオススメ。

インストール

VirtualBox

ここ」からダウンロード&インストール
インストール後再起動推奨

vagrant

ここ」からダウンロード&インストール

環境

$ system_profiler SPHardwareDataType
Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: MacBookPro12,1
      Processor Name: Intel Core i7
      Processor Speed: 3.1 GHz
      Number of Processors: 1
      Total Number of Cores: 2
      L2 Cache (per Core): 256 KB
      L3 Cache: 4 MB
      Memory: 16 GB
....

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.13.1
BuildVersion:   17B48

$ VBoxManage -v
5.1.30r118389

$ vagrant -v
Vagrant 2.0.0

ディレクトリを作り、移動

$ mkdir bit_birtual
$ cd bit_birtual/

vagrantを起動

これ」と「これ」を参考にvagrantの設定を行う

ここ」から使用したいboxを選んでURLをコピペ
CentOS7.2だとスムーズにいけるので今回はCentOS7.2で

# vagrant box add [box名] [boxのURL]
$ vagrant box add centos7.2 https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.2/vagrant-centos-7.2.box
$ vagrant init centos7.2
$ vagrant up

次回以降はvagrant upのみで良い

仮想環境にログイン

$ vagrant ssh #ローカル
[vagrant@localhost ~]$ #仮想環境

ビットコインのサーバープログラムをインストール

ここ」を参考にビットコインのプログラムを仮想環境の各ノードにインストール

vagrant ssh を実行したときに下のようにlocale関連のwarningが出る人はLC_ALLにCを入れておく

$ vagrant ssh
Last login: Sat Nov 18 06:19:56 2017 from 10.0.2.2
-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory
[vagrant@localhost ~]$ export LC_ALL=C

各種ツールをインストール

[vagrant@localhost ~]$ sudo yum install yum-utils
[vagrant@localhost ~]$ sudo rpm -Uvh https://linux.ringingliberty.com/bitcoin/el7/x86_64/bitcoin-release-3-1.noarch.rpm
[vagrant@localhost ~]$ sudo yum-config-manager --enable rhel-7-server-optional-rpms
[vagrant@localhost ~]$ yum -y install bitcoin-server bitcoin-utils

使用コマンドの確認

[vagrant@localhost ~]$ bitcoind -version
Bitcoin Core Daemon version v0.15.1.0-g7b57bc998f3
Copyright (C) 2009-2017 The Bitcoin Core developers
....

[vagrant@localhost ~]$ bitcoin-cli -version
Bitcoin Core RPC client version v0.15.1.0-g7b57bc998f3

おわりに

これでビットコインのマイニング環境は整った。実際に動いているブロックチェーンに参加することもできる。
次回は仮想マシンを複数立ててローカル環境でブロックチェーンを動かすところまでいきたい。