在上一篇文章《扒一扒EOS的前世此生》中,咱們已經瞭解了EOS以及他的創始人Daniel Larimer的故事,本次爲你們帶來的是關於EOS開發環境搭建的內容。首先咱們來了解一下EOS的核心架構和白皮書。html
EOS網絡由21個超級節點和100個備選節點構成,這21個超級節點負責輪流產生區塊,避免了挖礦競賽的問題,有效的提升同步數據的性能。node
白皮書原文就不向你們展現了,感興趣的朋友能夠去了解一下。經過閱讀EOS的白皮書,能夠提煉出如下關鍵信息。linux
下面所提到的是EOS官方提供的一些開發工具,基於這些工具咱們能夠搭建一個EOS私有節點進行學習和開發。在這裏,只需瞭解它們的用途便可。c++
nodeos
——節點軟件,能夠配置插件來運行節點的核心EOSIO節點守護程序。用途是塊生產,用於本地開發cleos
——客戶端工具,使用命令行操做,用於與區塊鏈交互並管理錢包keosd
——錢包客戶端工具,將EOSIO密鑰安全存儲在錢包中的組件eosio.cdt
——開發包工具,用於生成abi和把C++代碼轉換爲wasmeosio.contracts
——示例智能合約目前EOS的開發只支持Mac OS系統和linux系統,使用windows系統的朋友能夠安裝linux虛擬機進行開發。git
按照操做系統版本在終端執行對應的安裝命令:github
wget https://github.com/eosio/eos/releases/download/v1.5.0/eosio_1.5.0-1-ubuntu-18.04_amd64.deb sudo apt install ./eosio_1.5.0-1-ubuntu-18.04_amd64.deb
wget https://github.com/eosio/eos/releases/download/v1.5.0/eosio_1.5.0-1-ubuntu-16.04_amd64.deb sudo apt install ./eosio_1.5.0-1-ubuntu-16.04_amd64.deb
brew tap eosio/eosio brew install eosio
wget https://github.com/eosio/eos/releases/download/v1.5.0/eosio-1.5.0-1.el7.x86_64.rpm sudo yum install ./eosio-1.5.0-1.el7.x86_64.rpm
wget https://github.com/eosio/eos/releases/download/v1.5.0/eosio-1.5.0-1.fc27.x86_64.rpm sudo yum install ./eosio-1.5.0-1.fc27.x86_64.rpm
eosio.cdt——開發包工具,用於生成abi和把C++代碼轉換爲wasm算法
wget https://github.com/eosio/eosio.cdt/releases/download/v1.3.2/eosio.cdt-1.3.2.x86_64.deb sudo apt install ./eosio.cdt-1.3.2.x86_64.deb
wget https://github.com/eosio/eosio.cdt/releases/download/v1.3.2/eosio.cdt-1.3.2.x86_64.deb sudo apt install ./eosio.cdt-1.3.2.x86_64.deb
wget https://github.com/eosio/eosio.cdt/releases/download/v1.3.2/eosio.cdt-1.3.2.x86_64-0.x86_64.rpm sudo yum install ./eosio.cdt-1.3.2.x86_64-0.x86_64.rpm
EOS開發工具包安裝完成後,咱們就能夠用它來建立一個錢包。在EOS中,錢包用來管理帳戶,同一個錢包能夠管理多個帳戶,同時也能夠建立多個錢包。ubuntu
cleos wallet create --to-console
cleos wallet create -n yourWallet --to-console
cleos wallet list
在EOS中,操做帳戶時須要解鎖管理這個帳戶的錢包。windows
cleos wallet unlock
cleos wallet unlock -n yourWallet --password PW5KCfM9bNawtujMXaZxnRwtMfMavddmUz9nawPxTKCCLLpGcAazH
公鑰在建立帳戶時會用到,私鑰則用於帳戶簽名。一對密鑰能夠綁定多個帳戶。centos
cleos wallet create_key //或者指定錢包名 cleos wallet create_key -n yourWallet //以上任意一條命令便可完成建立密鑰對把它導入到錢包的操做
cleos create key --to-console //或者這樣 cleos create key --file keyFile
cleos wallet import --private-key 5J7qwRbkG9NHCXHrxJwYGodZiFzshp2YgrqKrbFce4HNCPkkTjh //或者這樣 cleos wallet import -n yourWallet --private-key 5KJ8chnW4cF6e7QdLQTTwSGHQ4ovZwS9agCQFfGhC2QQQTnCcAU
cleos wallet private_keys
cleos wallet private_keys -n yourWallet
nodeos -e -p eosio \ --plugin eosio::producer_plugin \ --plugin eosio::chain_api_plugin \ --plugin eosio::http_plugin \ -d ./eosData \ --config-dir ./eosData/config \ --access-control-allow-origin=* \ --contracts-console \ --http-validate-host=false \ —filter-on=‘*’
cleos create account eosio bob YOUR_PUBLIC_KEY -p eosio@active
若是報錯則須要將eosio帳號的密鑰對導入錢包
cleos wallet import --private-key 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
完成上面的全部操做後,咱們就完成了EOS的開發環境搭建。下期將爲你們帶來EOS開發入門的相關內容,敬請關注。