• <option id="cacee"><noscript id="cacee"></noscript></option>
  • <table id="cacee"><noscript id="cacee"></noscript></table>
  • <td id="cacee"></td>
  • <option id="cacee"></option>
  • <table id="cacee"></table>
  • <option id="cacee"><option id="cacee"></option></option>
  • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
    <option id="cacee"><option id="cacee"></option></option>
     找回密碼
     立即注冊

    掃一掃,登錄網站

    首頁 自媒體 查看內容
    • 3352
    • 0
    • 分享到

    一起學習EOS|EOS 3.0 安裝、本地節點搭建及命令行程序工具(附代碼)

    2018-4-20 13:25

    來源: HiBlock-Net



    1

    安  裝


    相比上個版本, 新版的EOS安裝實在太簡單了,幾乎做到了一鍵安裝,不禁在心中瘋狂為EOS開發團隊打call ,身為程序員, 能理解這有多么得不容易,在一個安裝腳本中,同時兼顧了操作系統的多樣性,處理各種依賴庫的安裝,最終編譯出十多個可執行程序。


    第一步 下載eos代碼


    git clone https://github.com/EOSIO/eos --recursive


    第二步 進入eos目錄, 然后執行一鍵安裝腳本即可


    cd eos
    ./eosio_build.sh


    執行一鍵安裝腳本,腳本會首先會收集當前電腦上的信息,以及各種依賴包的安裝狀態。


    然后詢問你是否安裝缺失的依賴, 直接輸入1選擇yes即可進入下一環節。



    確認之后,是比較長的安裝和編譯時間,取決于要安裝的依賴的數量和網速以及電腦性能。我大概安裝了40分鐘。期間部分軟件需要輸入密碼,所以安裝過程中需要不時看一下,別走開噢。


    安裝腳本做的太nice了。編譯過程隨時都有進度提醒。



    百分百之后,出現紅色的EOSIO,就大功告成啦!



    2

    啟動本機單節點測試網絡


    成功編譯安裝過后,可以在build目錄下找到 programs目錄, 那些是編譯出來的可執行程序。啟動節點,需要用到nodeos, 所以進入到nodeos目錄


    ?  programs git:(master) ? pwd
    /Users/joe/Workspace/eos/build/programs
    ?  programs git:(master) ? ls
    CMakeFiles          cleos               eosc                eosio-launcher
    CTestTestfile.cmake cmake_install.cmake eosd                keosd
    Makefile            codegen             eosio-abigen        launcher
    abi_gen             eos-walletd         eosio-applesedemo   nodeos
    ?  programs git:(master) ? cd nodeos
    ?  nodeos git:(master) ? pwd
    /Users/joe/Workspace/eos/build/programs/nodeos
    ?  nodeos git:(master) ? ls
    CMakeFiles          Makefile            config.hpp
    CTestTestfile.cmake cmake_install.cmake nodeos


    運行 nodes --help 可以查看幫助說明.


    要啟動本地單節點,只需要執行以下命令:


    ./nodeos -e -p eosio --plugin eosio::wallet_api_plugin --plugin eosio::chain_api_plugin --plugin eosio::account_history_api_plugin


    啟動成功之后,就看到一條新的EOS區塊鏈新建成功的提示信息,并且這個區塊鏈已經開始生成區塊了,出塊速度,大概算了下,確實如發布會所講,大概0.5秒出一次,由于還沒有任何交易,所以當前打包的區塊信息中都是0 trxs .



    我們安裝好了EOS DAWN3.0,并啟動了一條本機單節點的EOS區塊鏈,接下來重點放在熟悉EOS的命令行程序和工具。以下提到的所有命令后程序和項目,均是EOS編譯安裝成功之后生成的,可以在 ./build/programs 目錄下找到。


    3

    命令行程序


    nodeos


    這是EOS的核心守護進程。運行時可以通過參數,為它配置插件。 我來舉個栗子 :


    ./nodeos -e -p eosio --plugin eosio::wallet_api_plugin --plugin eosio::chain_api_plugin --plugin eosio::account_history_api_plugin


    --plugin后面,就是需要配置的插件名稱。

    上文中我們就是用這命令,啟動了一條本機單節點的EOS區塊鏈。


    cleos


    如果把nodeos當作服務端的話,cleos就是客戶端。

    看它們的命名也能理解:


    nodeos node eos 
    cleos = client eos


    cleos 是個命令行工具, 用來和 nodeos所提供的 REST API 進行交互。

    既然是 REST API , 那說明 nodeos 必然需要向外暴露一個ip地址跟端口。

    cleos作為一個客戶端交互工具, 是EOS中最核心的最常用的部分了, 所以有著相當多的子命令和參數:


    不帶任何參數運行,列出幫助文檔:


    ?  cleos git:(master) ? ./cleos
    ERROR: RequiredError: Subcommand required
    Command Line Interface to EOSIO Client
    Usage: ./cleos [OPTIONS] SUBCOMMAND
    
    Options:
      -h,--help                   Print this help message and exit
      -H,--host TEXT=localhost    the host where nodeos is running
      -p,--port UINT=8888         the port where nodeos is running
      --wallet-host TEXT=localhost
                                  the host where keosd is running  --wallet-port UINT=8888     the port where keosd is running
      -v,--verbose                output verbose actions on errorSubcommands:
      version                     Retrieve version information  create                      Create various items, on and off the blockchain  get                         Retrieve various items and information from the blockchain  set                         Set or update blockchain state
      transfer                    Transfer EOS from account to account
      net                         Interact with local p2p network connections  wallet                      Interact with local wallet
      sign                        Sign a transaction
      push                        Push arbitrary transactions to the blockchain


    可以看到,子命令有


    • version: 查看版本號

    • create: 創建各種對象,比如account, key, producer

    • get: 獲取用create創建的對象的信息

    • set: 一個對區塊鏈的寫入操作。比如部署智能合約,修改智能合約。

    • transfer: 就是轉賬啦,account 與 account之間互轉EOS,可以通過此命令。

    • net : (暫時還未了解)

    • wallet: 和本地錢包進行交互

    • sign: 對交易進行簽名

    • push: 把各種交易發送到區塊鏈上。


    keosd


    這是EOS錢包的守護進程。啟動這個進程之后,我們可以使用上面的cleos wallet與它進行交互。 進行創建錢包、導入key等操作。

    launcher

    launcher 是用來創建多節點區塊鏈的。nodeos是用來創建單節點區塊鏈。如果想要搭建多個節點的區塊鏈,則可以通過launcher來配置。 


    4

    命令行工具


    eosiocpp


    這個命令是從上班版本遺傳下來的,不禁覺得親切, eosiocpp和智能合約有關, 當我們用c++寫好智能合約代碼以后, 需要用eosiocpp 對c++代碼進行編譯和轉化,生成ABI文件。

    本文內容作者:HiBlock區塊鏈社區“一起寫筆記”小伙伴——jc1991

    版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。
    相關新聞
    發表評論

    請先 注冊/登錄 后參與評論

      回頂部
    • <option id="cacee"><noscript id="cacee"></noscript></option>
    • <table id="cacee"><noscript id="cacee"></noscript></table>
    • <td id="cacee"></td>
    • <option id="cacee"></option>
    • <table id="cacee"></table>
    • <option id="cacee"><option id="cacee"></option></option>
    • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
      <option id="cacee"><option id="cacee"></option></option>
      妖精视频