系統環境
Ubuntu16.04; NodeJS: v6.10.2; NPM: 3.10.10; Truffle: 2.0.8; TestRPC: 3.0.5
安裝步驟
注意:以root用戶操作安裝過程,否則可能安裝不成功
1、安裝nodejs 6.x版,此處我安裝完畢版本是6.10.2,npm版本是3.10.10,參考《Ubuntu 16.04 安裝NodeJs》
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
如果不成功,就在前面加上“sudo -E”。查看nodejs和npm版本:
root@blockchain:~$ nodejs -v v6.10.2 root@blockchain:~$ npm -v 3.10.10
2、安裝TestRPC:
sudo -E npm install ethereumjs-testrpc -g
運行testrpc可看到testrpc版本號、初始化以太坊地址和監聽端口,此處版本號為v3.0.5
root@blockchain:~$ testrpc Secp256k1 bindings are not compiled. Pure JS implementation will be used. EthereumJS TestRPC v3.0.5 Available Accounts ================== (0) 0x6f41fffc0338e715e8aac4851afc4079b712af70 🔒 (1) 0xad8926fdb14c2ca283ab1e8a05c0b6707bc03f97 🔒 (2) 0x1cb0ff92ec067169fd6b1b12c6d39a4f6c2cf6f9 🔒 (3) 0x594b70524993798cb093ca8a2bd7f02f904b66d3 🔒 (4) 0x2f1ee0930f00b0f3cdab66d916cbd1fa4fe9535a 🔒 (5) 0x5513a551c5aafaa8719a0df5bf398d4b3af4e211 🔒 (6) 0xa1bf121993c23cc467eec8b7e453011dae250404 🔒 (7) 0xe0b161979ebca95235c4cfeddfd11fb30d782a4d 🔒 (8) 0x093b30604ac41e054e71b670d8e3ab68360017c9 🔒 (9) 0x1cac60d851a44305d7dd6ecf8ff32f3403427d3d 🔒 Private Keys ================== (0) db3ecbc77961edb030858411850bd1ed12915dcf3c13762ec3692989810c2870 (1) e0cc6b69516123fdf5d739dc9109ab486cf385affba555f0f03a7c74d7c1a88f (2) cea171049aa817c8ecade84ed8d20ce9e2312bed6e0f39548c9673a65bd47a47 (3) e7f5cbba7403d0c5ea421f6ce64165b79d5c13594ad4a0ffa27896b498d6f5ad (4) 6d1cd1fa965caf8a0b073faff072732de0eb0a8c153cc355f89eedb49c12ed12 (5) c535a490deefd452daab45b01daaf34366d6748afa5f0778aac5dae6c590c135 (6) 1292992fba6774016899237b8eb217108c5f9021e0e334aa5fad3db62e5c406b (7) 03d02b40ab919c9d51e26fdc2e70c221d65ec1970f1283acad8b3445c5771f56 (8) 018069b07dc4d177a612ef0e20f63b9962781ab2d57d2ad50d9361a9be804bc4 (9) cd348e9ee0bc2cfbda9b9822d42b3dd3b83d180425bc153ffbc7e7e5bf13fa28 HD Wallet ================== Mnemonic: say slight close trip refuse seven marble fun edge galaxy cash pioneer Base HD Path: m/44'/60'/0'/0/{account_index} Listening on localhost:8545
3、安裝Truffle
因為直接使用“sudo -E npm install truffle -g“,多次嘗試都安裝不成功。故打算指定安裝3.1.1版本,可安裝成功。
但安裝后發現公司電腦使用代理上網,安裝完truffle 3.1.1版本在使用“truffle init”時會出現網絡錯誤,百般查詢后依然得不到解決。故裝回2.0.8版本,因為該版本使用“truffle init”時不需要聯網。
注意:公司內不使用代理上網的可忽略上述紅色字體的提示。
安裝時指定了truffle版本為2.0.8,
root@blockchain:~# sudo -E npm install truffle@2.0.8 -g
運行truffle命令查看是否安裝成功:
root@blcokchain:~# truffle version Truffle v2.0.8
測試
1、首先開啟TestRPC:
testrpc
2、創建一個工程目錄
sudo mkdir truffleTest
3、進入該工程,並初始化該工程
root@blockchain:/home$ cd truffleTest root@blockchain:/home/truffleTest$ sudo truffle init root@blockchain:/home/truffleTest$ ls app contracts migrations test truffle.js
4、在該目錄下編譯並部署項目
sudo truffle compile # 編譯項目 sudo truffle migrate # 部署到TestRPC sudo truffle serve # 開啟服務
5、訪問項目,打開瀏覽器,輸入“http://localhost:8080”,則代表項目部署成功。