接下來幾天會來安裝、設置EOS智能合約的開發環境。這部份可以跳過,我目前還在了解EOS Studio,而目前來看,要建立環境非常簡單。這部份內容預計會有以下部份,且建議還是多少了解下,有個概念基礎,開發智能合約會更容易。
今天是安裝環境並啟動的部份。使用的作業系統是Ubuntu 18.04,其他安裝方式可以自行參考官網。或是像我一樣在Container裡使用。
在以前,要使用EOSIO需要自行編譯。除了要用gcc
、make
等等開發工具,也要有所了解才有辦法處理意外狀況。
在1.3還是1.4之後,EOSIO官方提供了二進位的安裝檔,安裝上簡單順利多了。
# INSTALL EOSIO
wget https://github.com/EOSIO/eos/releases/download/v1.7.0/eosio_1.7.0-1-ubuntu-18.04_amd64.deb
sudo apt install ./eosio_1.7.0-1-ubuntu-18.04_amd64.deb
# INSTALL EOS.CDT
wget https://github.com/EOSIO/eosio.cdt/releases/download/v1.6.1/eosio.cdt_1.6.1-1_amd64.deb
sudo apt install ./eosio.cdt_1.6.1-1_amd64.deb
透過上面安裝完EOS以後,要執行節點也非常簡單,就是使用nodeos
。不過為了方便開發,我們要多加一點附加設定:
nodeos -e -p eosio \
--plugin eosio::producer_plugin \
--plugin eosio::chain_api_plugin \
--plugin eosio::http_plugin \
--plugin eosio::history_plugin \
--plugin eosio::history_api_plugin \
--access-control-allow-origin='*' \
--contracts-console \
--http-validate-host=false \
--http-server-address=0.0.0.0:8888 \
--verbose-http-errors >> nodeos.log 2>&1 &
另外,希望能夠其他電腦也可以使用節點,所以加上--http-server-address=0.0.0.0:8888 \
。現在我們可以瀏覽看看http://localhost:8888/v1/chain/get_info
透過tail -f nodeos.log
可以查看節點運行狀態。此外,運行其他節點時,還可以使用--p2p-peer-address args
來連結兩個節點。(透過cleos net connect host
也可以將其他節點加入網路)。
cleos
應該會自動運行keosd
,不過要是之後無發存取私鑰,可以透過下列方式自動啟動:
keosd &