经验分享 EOS 使用笔记

Aven · June 20, 2018 · Last by strahe replied at June 21, 2018 · 12301 hits

此笔记仅在本地环境使用。运行环境为Ubuntu。 eos服务建议使用Docker启动。

1.Docker启动本地单节点服务

启动

sudo docker run --rm --name eosio -d -p 8888:8888 -p 9876:9876 \ -v /tmp/work:/work \ -v /tmp/eosio/data:/mnt/dev/data \ -v /tmp/eosio/config:/mnt/dev/config eosio/eos-dev /bin/bash \ -c "nodeos -e -p eosio \ --plugin eosio::wallet_api_plugin \ --plugin eosio::wallet_plugin \ --plugin eosio::producer_plugin \ --plugin eosio::history_plugin \ --plugin eosio::chain_api_plugin \ --plugin eosio::history_api_plugin \ --plugin eosio::http_plugin \ -d /mnt/dev/data \ --config-dir /mnt/dev/config \ --http-server-address=0.0.0.0:8888 \ --access-control-allow-origin=* \ --contracts-console"

查看docker日志

sudo docker logs --tail 10 eosio

查看区块信息

cleos get info

2.Cleos操作

第一步先创建钱包:

钱包创建成功后将密码保存好 ,后面解锁钱包会使用到

cleos wallet create -n ${walletName}

获取key 并将私钥引入钱包

cleos create key 这里会返回两个key 一个公钥 一个私钥 要要保存好 后面创建账户的时候需要使用到。

cleos wallet import -n ${walletName} ${private key}

解锁钱包

cleos wallet unlock -n ${walletName} 这里需要填写钱包密码

创建必要账户

部署智能合约会依附在在写账户上,要创建者几个必要的账户。

accountname:{ "eosio.bpay", "eosio.msig", "eosio.name", "eosio.names", "eosio.ram", "eosio.ramfee", "eosio.saving", "eosio.stake", "eosio.token", "eosio.upay" } cleos create account eosio ${accountname} ${onwerkey} ${activekey}

部署必要的合约

到eos根目录下执行下面的指令

bios智能合约

cleos set contract eosio ./build/contracts/eosio.bios/ -p eosio -j

token智能合约

cleos set contract eosio.token ./build/contracts/eosio.token/ -p eosio.token -j

msig智能合约

cleos set contract eosio.msig ./build/contracts/eosio.msig/ -p eosio.msig -j

system智能合约

system智能合约的部署一定要在实现了创建代币之后,否则会报错。这里坑有些多

cleos set contract eosio ./build/contracts/eosio.system/ -p eosio -j

创建代币

代币符号就叫SYS暂时不要去改动,不然后面使用newaccount创建可以投票的账户会报错的。

cleos push action eosio.token create '[ "eosio", "1000000000.0000 SYS"]' -p eosio.token

发币

如果要进行投票 就需要向eosio这个认证账户里发代币 如果eosio里没有代币了,就无法创建的投票账户了。

cleos push action eosio.token issue '[ "user", "100.0000 SYS", "memo" ]' -p eosio -j cleos push action eosio.token issue '[ "eosio", "100.0000 SYS", "memo" ]' -p eosio -j

交易

用户间也可以进行转账交易

cleos push action eosio.token transfer '[ "user", "tester", "25.0000 SYS", "m" ]' -p user -j

查看当前账户的代币

sudo cleos get currency balance eosio.token user SYS

创建投票账户

完成了上面的操作后才可以成功创建投票用户,如果报错,看看哪一步没有做,做了在来执行此操作。

cleos system newaccount eosio voter1 ${owerkey} ${activkey} \ --stake-net '10.000 SYS' --stake-cpu '10.000 SYS' --buy-ram '10.000 SYS' 抵押 10.000 个SYS 来租用网络 抵押 10.000 个SYS 来租用 CPU 抵押 10.000 个SYS 来租用 内存

给投票账户发代币

cleos push action eosio.token issue '[ "voter1", "1000.0000 SYS", "issue" ]' -p eosio -j

共收到 1 条回复
需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up