EOS開發環境搭建


EOS開發環境搭建



  在上一篇文章《扒一扒EOS的前世今生》中,我們已經了解了EOS以及他的創始人Daniel Larimer的故事,本次為大家帶來的是關於EOS開發環境搭建的內容。首先我們來了解一下EOS的核心架構和白皮書。



1. EOS的核心架構

image

  EOS網絡由21個超級節點和100個備選節點構成,這21個超級節點負責輪流產生區塊,避免了挖礦競賽的問題,有效的提高同步數據的性能。

2. 白皮書解讀

  白皮書原文就不向大家展示了,感興趣的朋友可以去了解一下。通過閱讀EOS的白皮書,可以提煉出以下關鍵信息。

  • 支持數以千萬的日活用戶
  • 普通用戶免費使用更利於平台推廣
  • 更容易升級和bug修復
  • 更低的延時,0.5秒可以出一個塊
  • 委托股權證明(DPOS)的共識算法,21個超級節點負責出塊
  • 更快的交易確認,廣播后開始1.5秒后就可以99.9%認為是確定的
  • 人類可識別的帳戶,長度2到32個字符之間,帳戶名稱支持命名空間
  • 基於角色的權限管理
  • 執行合約需要有cpu,ram和帶寬,ram需要購買,cpu和帶寬可以通過eos質押獲得
  • 智能合約采用c/c++編寫,編譯為wasm在虛擬機中運行

3. EOS工具介紹

  下面所提到的是EOS官方提供的一些開發工具,基於這些工具我們可以搭建一個EOS私有節點進行學習和開發。在這里,只需了解它們的用途即可。

image

  • nodeos——節點軟件,可以配置插件來運行節點的核心EOSIO節點守護程序。用途是塊生產,用於本地開發
  • cleos——客戶端工具,使用命令行操作,用於與區塊鏈交互並管理錢包
  • keosd——錢包客戶端工具,將EOSIO密鑰安全存儲在錢包中的組件
  • eosio.cdt——開發包工具,用於生成abi和把C++代碼轉換為wasm
  • eosio.contracts——示例智能合約

4. EOS的開發環境安裝

  目前EOS的開發只支持Mac OS系統和linux系統,使用windows系統的朋友可以安裝linux虛擬機進行開發。

4.1 安裝二進制文件

  按照操作系統版本在終端執行對應的安裝命令:

  • Ubuntu 18.04
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
  • Ubuntu 16.04
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
  • Mac OS
brew tap eosio/eosio
brew install eosio
  • CentOS
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
  • Fedora
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

4.2 安裝EOSIO合約開發工具包(CDT)

  eosio.cdt——開發包工具,用於生成abi和把C++代碼轉換為wasm

  • Ubuntu
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
  • Mac OS
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
  • CentOS / Redhat
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

5. EOS的錢包和賬戶操作

  EOS開發工具包安裝完成后,我們就可以用它來創建一個錢包。在EOS中,錢包用來管理賬戶,同一個錢包可以管理多個賬戶,同時也可以創建多個錢包。

5.1 創建錢包

  • 創建默認錢包並輸出密碼等信息到控制台
cleos wallet create --to-console
  • 創建並命名錢包
cleos wallet create -n yourWallet --to-console
  • 查看錢包列表
cleos wallet list

image

5.2 解鎖錢包

  在EOS中,操作賬戶時需要解鎖管理這個賬戶的錢包。

  • 解鎖默認錢包
cleos wallet unlock
  • 解鎖指定名稱的錢包
cleos wallet unlock -n yourWallet --password PW5KCfM9bNawtujMXaZxnRwtMfMavddmUz9nawPxTKCCLLpGcAazH

image

5.3 創建密鑰對並導入到錢包中

  公鑰在創建賬戶時會用到,私鑰則用於賬戶簽名。一對密鑰可以綁定多個賬戶。

  • 方法一:創建密鑰對並自動導入到錢包
cleos wallet create_key
//或者指定錢包名
cleos wallet create_key -n yourWallet
//以上任意一條命令即可完成創建密鑰對把它導入到錢包的操作

image

  • 方法二:創建密鑰對並導入到錢包
    • 先創建
    cleos create key --to-console
    //或者這樣
    cleos create key --file keyFile
    
    • 再導入
    cleos wallet import --private-key 5J7qwRbkG9NHCXHrxJwYGodZiFzshp2YgrqKrbFce4HNCPkkTjh
    //或者這樣
    cleos wallet import -n yourWallet --private-key 5KJ8chnW4cF6e7QdLQTTwSGHQ4ovZwS9agCQFfGhC2QQQTnCcAU
    

image

5.4 查看錢包中包含的密鑰對

  • 查看默認錢包中的密鑰對
cleos wallet private_keys
  • 查看指定錢包中的密鑰對
cleos wallet private_keys -n yourWallet

image

5.5 創建賬戶

  • 啟動EOS私有節點
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

image




  完成上面的所有操作后,我們就完成了EOS的開發環境搭建。下期將為大家帶來EOS開發入門的相關內容,敬請關注。




image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM