EOS開發基礎

2021-08-22 08:36:05 字數 4142 閱讀 7084

三、cleos

1.1 拉取**:git clone –recursive

1.2 自動build:cd eos && ./eosio_build.sh ubuntu

1.3 安裝可執行檔案:cd build && sudo make install

1.4 驗證:~/opt/mongodb/bin/mongod -f ~/opt/mongodb/mongod.conf & ; cd build && make test

linux: ~/.local/share/eosio/nodeos/config/config.ini ,同樣也可以通過cli 的nodeos –引數載入配製

(1)本地單節點:nodeos -e -p eosio –plugin eosio::chain_api_plugin –plugin eosio::history_api_plugin

(2)本地多節點:

開啟4個終端:

1)終端1:keosd –http-server-address 127.0.0.1:8899

2)終端2:

生成公私鑰對 :cleos create key

將上一步金鑰對中的私鑰匯入錢包:cleos wallet import $

3)終端2啟動第乙個生產者節點eosio:nodeos –enable-stale-production –producer-name eosio –plugin eosio::chain_api_plugin –plugin eosio::net_api_plugin

4)載入eosio.bios合同:通過此合同,可以直接控制其他帳戶的資源分配並訪問其他特權api呼叫。

5)以eosio為建立者建立新賬戶inita:cleos –wallet-url http://localhost:8899 create account eosio inita pu

bkey

p ub

key6) 啟動第二個生產節點inita:

7) 將空閒生產者inita啟用:通過將inita註冊為具有bios節點的生產者來啟用

8)驗證:eosio不再產生節點,生產者只有inita

第乙個 節點資訊:cleos –url http://localhost:8888 get info

第二個節點資訊:cleos –url http://localhost:8889 get info

(1) 預設錢包

/**

建立預設錢包:預設錢包檔名:default.wallet

位置:~/eosio-wallet

指定:--wallet-dir $

$ cleos wallet create

(2) 多個錢包

$ cleos wallet create -n  $
(3)驗證

$ cleos wallet list
(4)解鎖某個錢包

$ cleos wallet unlock -n $
(5)關閉與開啟錢包

1)keosd終止,wallet關閉;

unlock-timeout = 900 預設15min後自動關閉,可以在配製檔案自己設定。

2)再次開啟:

$ cleos wallet open
(6)錢包中引入金鑰對

//產生金鑰對

$ cleos create key//引入私鑰

$ cleos wallet import private_key_1//檢視錢包引入的公鑰

$ cleos wallet keys

//$ cleos wallet private_keys --password your wallet password

(7)錢包檔案所在位置:

預設:$ cd ~/eosio-wallet && ls

指定:data-dir的值

(1)使用cleos請求nodeos建立帳戶並在區塊鏈上發布。

keosd 和nodeos 預設埠都是8888,修改keosd 埠為8899:

1)修改keosd的配製檔案:~/eosio-wallet/config.ini:http-server-address = 127.0.0.1:8899

2)啟動keosd:

(2)解鎖錢包:

(3)啟動nodes:

/**

eosio帳戶是用於引導eosio節點的特殊帳戶。 這個帳戶的金鑰可以在nodeos配置檔案:〜/ .local / share / eosio / nodeos / config / config.ini :signature-provider =

**/$nodeos -e -p eosio --plugin eosio::chain_api_plugin --plugin eosio::history_api_plugin

(4)建立賬戶:

//keosd埠8899

//一般用以下即可

$ cleos create account eosio new_account owner_key active_key

(1)cleos 使用 –url or –wallet-url 連線到不同nodes,如果不指定引數值,預設連線到本地正在執行的eos node。

//連線到node

//連線到keosd

cleos --wallet-url $

(2)cleos 會自動啟動keosd ,但是當多個keosd在一台機器上啟動時,cleos可能連線不到特定的keosd,原因是可能找不到正確的金鑰集。檢視是否有多個keosd在執行:

$ pgrep keosd | xargs printf

" -p %d" | xargs lsof -pani

EOS開發教程 Docker構建EOS環境

由於eos的版本在不斷的更新迭代,本地編譯最新版本的方式更新比較繁瑣,而且容易出問題。因此,我們推薦使用docker容器的方式配置eos本地測試環境,這樣方便維護公升級,而且簡單。此外,eos的docker image會每天定時更新並被推送到dockerhub,可以直接去拉取官方的最新版本image...

EOS 開發環境搭建

單節點區塊鏈搭建 參考資料 拉取 git clone recursive 編譯 eosio build.sh 修改配置 修改data dir下的config.ini genesis.json修改傳世區塊路徑 genesis json path to eos source genesis.json e...

EOS智慧型合約開發(十七)EOS架構解析

官方文件中,清晰的描述了以下原圖。這張圖,是eos未來發發展藍圖,bm早期的想法就是為使用者提供百萬級tps體驗而設計的基礎設設施。仔細閱讀源 發現目前還與很多沒有實現。這個是我們對eos的期待。從eos的系統架構,我們可以清晰看到系統主要由以下幾個部分組成 cleos cli eos cleos ...