ubuntu on dockerにスマートコントラクト開発環境を作成


作業記録です。

コンテナの構築

永続化領域の作成

docker pull busybox
docker create -v /Users/xx/Project/sc/storage --name scstorage busybox

ubuntu

docker pull ubuntu
docker run --volumes-from scstorage --name scubuntu -i -t ubuntu /bin/bash

install

apt-get install apt-file
apt-file update
apt-get install software-properties-common
add-apt-repository ppa:longsleep/golang-backports
apt-get update
apt-get install golang-go
add-apt-repository -y ppa:ethereum/ethereum
apt-get update
apt-get install -y ethereum
apt-get install -y solc
mkdir ~/data_testnet
cd ~/data_testnet
apt-get install -y vim
vim genesis.json
{
"config": {},
"nonce"      : "0x0000000000000042",
"timestamp"  : "0x00",
"parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"gasLimit"   : "0x8000000",
"difficulty" : "0x4000",
"mixhash"    : "0x0000000000000000000000000000000000000000000000000000000000000000",
"alloc"      : {}
}
cp -r /root/data_testnet/ /home/

Geth起動

cd /home/data_testnet/
geth --datadir /home/data_testnet init /home/data_testnet/genesis.json
tree /home/data_testnet/

installで試行錯誤したり、テストネットのパスを動かしたりしました。
上記手順の再検証をする時間はないので、その辺りはご容赦を。