纯净机器上部署 EOS 测试网

演示的系统为 Ubuntu 18.04 LTS,内存8g以上,硬盘300g+

clone EOS代码

们以EOS-Mainnet仓库部署,(EOS-Mainnet是部署在目前EOS主网的版本,等于再次在EOSIO仓库测试过的版本,更稳定。)

开始clone 代码

//如果没有安装git,先安装
$sudo apt install git
$git clone https://github.com/EOS-Mainnet/eos.git

切换到最新分支(当前的EOS最新版本为 v1.4.3)

更新子模块代码

git submodule update --init --recursive

编译代码

./eosio_build.sh -s EOS

安装程序

sudo ./eosio_install.sh

创建配置文件夹

sudo mkdir /data
sudo chmod 777 /data
cd /data

创建缺省钱包

cleos wallet create --to-console

输出密码如:PW5Kequvj31v37mAeBEPtx2mNcs5SHCjoZXf4sWw67GvxuNPZwfEf

这里会产生一个密码,可以把密码保存下来

echo PW5Kequvj31v37mAeBEPtx2mNcs5SHCjoZXf4sWw67GvxuNPZwfEf > pwd.txt

生成genesis.json文件

mkdir config
mkdir data
cd config
nodeos --extract-genesis-json genesis.json

新建一个config.ini文件, 并添加如下内容

http-server-address = 0.0.0.0:8000
p2p-listen-endpoint = 0.0.0.0:8001
agent-name = "EOS AI"
producer-name = eosio
signature-provider = EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV=KEY:5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
#创世节点才需要,其他bp不需要开启
enable-stale-production = true #以下为通用设置
max-transaction-time=1000
wasm-runtime = wabt
pause-on-startup = false
abi-serializer-max-time-ms = 3000
chain-state-db-size-mb = 65535
reversible-blocks-db-size-mb = 2048
contracts-console = false
p2p-max-nodes-per-host = 1
allowed-connection = any
max-clients = 100
network-version-match = 1
sync-fetch-span = 500 #filter-on = *
connection-cleanup-period = 30
max-implicit-request = 1500
http-validate-host = false
access-control-allow-origin = *
access-control-allow-headers = *
access-control-allow-credentials = false
verbose-http-errors = true #添加插件
plugin = eosio::chain_api_plugin
plugin = eosio::history_plugin
plugin = eosio::history_api_plugin
plugin = eosio::producer_plugin

首次启动节点

cd /data
nodeos --genesis-json ./config/genesis.json --max-irreversible-block-age 108000000 --data-dir ./data --config-dir ./config --delete-all-blocks

激活eosio账号

cleos wallet import --private-key 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3

特别注意,本文中的其它密码,KEY都是自定义的, 这里这个KEY必须是这个串,不得变更。

创建基础合约

cd {EOS源码路径}/build/contracts
cleos -u http://127.0.0.1:8000 set contract eosio eosio.bios/ -p eosio

创建系统基础账号

cleos wallet import --private-key 5JBCqbY4EuwtVxCz4qBMXTGiT1hRr1bEjbZPKM16Q7fgcb8ikEP

cleos -u http://127.0.0.1:8000  create account eosio  eosio.sudo    EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831
cleos -u http://127.0.0.1:8000 create account eosio eosio.vpay EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831
cleos -u http://127.0.0.1:8000 create account eosio eosio.token EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831
cleos -u http://127.0.0.1:8000 create account eosio eosio.bpay EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831
cleos -u http://127.0.0.1:8000 create account eosio eosio.msig EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831
cleos -u http://127.0.0.1:8000 create account eosio eosio.names EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831
cleos -u http://127.0.0.1:8000 create account eosio eosio.ram EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831
cleos -u http://127.0.0.1:8000 create account eosio eosio.ramfee EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831
cleos -u http://127.0.0.1:8000 create account eosio eosio.saving EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831
cleos -u http://127.0.0.1:8000 create account eosio eosio.stake EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831

创建系统基础合约

cleos -u http://127.0.0.1:8000 set contract eosio.token eosio.token
cleos -u http://127.0.0.1:8000 push action eosio.token create '["eosio","10000000000.0000 EOS",0,0,0]' -p eosio.token
cleos -u http://127.0.0.1:8000 push action eosio.token issue '["eosio","1000000000.0000 EOS","issue"]' -p eosio
cleos -u http://127.0.0.1:8000 get currency balance eosio.token eosio
cleos -u http://127.0.0.1:8000 set contract eosio eosio.msig -p eosio
cleos -u http://127.0.0.1:8000 set contract eosio eosio.system -p eosio

其中最后一句, 可以多执行几遍,确保输出类似如下内容,表示合约已经确认,不然后面调用合约创建账号可能会报错。

Reading WASM from eosio.system/eosio.system.wasm...

Skipping set code because the new code is the same as the existing code

Skipping set abi because the new abi is the same as the existing abi

no transaction is sent

cleos -u http://127.0.0.1:8000 set contract eosio eosio.sudo -p eosio

创建其它账号

cleos -u http://127.0.0.1:8000 system newaccount eosio eosio.bp1 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831   --stake-net "20000 EOS" --stake-cpu "20000 EOS" --buy-ram "20000 EOS"
cleos -u http://127.0.0.1:8000 system newaccount eosio eosio.bp2 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 --stake-net "20000 EOS" --stake-cpu "20000 EOS" --buy-ram "20000 EOS"
cleos -u http://127.0.0.1:8000 system newaccount eosio eosio.bp3 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 EOS8V8fLfYQhjdMLkFzz12YdK3UBCAw8mT7imCiJGfgxTdNs9H831 --stake-net "20000 EOS" --stake-cpu "20000 EOS" --buy-ram "20000 EOS" cleos -u http://127.0.0.1:8000 get account eosio.bp1
cleos -u http://127.0.0.1:8000 get account eosio.bp2
cleos -u http://127.0.0.1:8000 get account eosio.bp3

搭建EOS未完的更多相关文章

  1. Java Web 1-开发环境搭建(未完待续)

    Java Web包含什么?前台.后台,前台的HTML.JSP,后台的Servlet.(目前所知) 开发环境: JDK,MySQL,Tomcat,Eclipse @ Windows 10 说明:本文总结 ...

  2. Kubernetes(二)-- 搭建(未完待续)

    一.部署前规划 1. 操作系统初始化设置 :需要设置好集群机器,关闭防火墙和selinux 2. 创建ca证书和私钥 :集群间通信要加密,那么肯定要有ca的创建,以后就用这一步创建的ca当作证书颁发机 ...

  3. [ambari环境搭建](未完待续)

    [安装] https://blog.csdn.net/Happy_Sunshine_Boy/article/details/86595945#commentBox https://www.jiansh ...

  4. Nginx php-fpm 分离搭建 (上) 未完

    最近又重新看了一遍   'nginx入门到精通'      抽点时间 出来搭几个Demo  会有更深体会: Nginx如何与Php-fpm结合 Nginx不只有处理http请求的功能,还能做反向代理. ...

  5. virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续)

    virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续) 第一次接触到 linux,不知道linux的确很强大,然后用virtualbox ...

  6. 阿里云服务器:IIS网站的架设(一、环境设置与安装IIS网站 二、网站的基本设置 三、建立新网站(未完待续))

    Windows Server 2012 R2的Internet Information Services (IIS)网站的模块化设计,可以减少被攻击面并减轻管理负担,让系统管理员更容易架设安全的具备高 ...

  7. 使用IntelliJ IDEA进行Python远程调试的需求(未完)

    使用IntelliJ IDEA进行Python远程调试的需求(未完) 在研究深度学习Machlearning时,有时候需要借助ubuntu搭建的tensorflow环境,另外也有越来越多的运算程序只能 ...

  8. git安装与使用,未完待续... ...

    ​ 目录 一.git概念 二.git简史 三.git的安装 四.git结构 五.代码托管中心-本地库和远程库的交互方式 六.初始化本地仓库 七.git常用命令 1.add和commit命令 2.sta ...

  9. javascript有用小功能总结(未完待续)

    1)javascript让页面标题滚动效果 代码如下: <title>您好,欢迎访问我的博客</title> <script type="text/javasc ...

随机推荐

  1. PAT 1116 Come on! Let's C

    1116 Come on! Let's C (20 分)   "Let's C" is a popular and fun programming contest hosted b ...

  2. Linux必备150个命令

       命令                                                        功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的词典,更复杂 ...

  3. mysql5.7 for windows二进制安装及配置

    1)mysql5.7二进制软件下载 下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads 下载软件:mysql-5.7.25-wi ...

  4. Django全文检索(django-haystack+whoosh+jieba)

    前言: 全文检索就是针对所有内容进行动态匹配搜索的概念,针对特定的关键词建立索引并精确匹配达到性能优化的目的 class Whoose_seach(object): analyzer = Chines ...

  5. EF Core 生成数据库

       1.运行cmd,切换到打开项目所在文件夹,输入下面的命令 dotnet ef migrations add Initial 建立并初始化数据库 dotnet ef database update ...

  6. 分析Json/Xml的解析过程

    json和xml都是用来进行数据的传输和交换的,是目前用来传输数据用的最多的两种技术,下面我们分别来认识一下它们及其解析过程 一.json 1.json简介 JSON是一种基于文本的轻量级数据交换格式 ...

  7. bootstrap modal 监听滚动条事件

    bootstrap modal 里面使用datetimepicker时间控件,滚动时,时间控件并不会隐藏,这是一个小bug,在组里改下,当滚动条滚动时,直接隐藏这个时间控件,$("#alar ...

  8. Linux快捷键总结

    使用Linux很久了,现对经常用到的快捷键做一个总结: 最重要的一个当然是tab了 [root@localhost ~]# cd /etc/sys sysconfig/ sysctl.conf sys ...

  9. IE浏览器下flex布局的bug

    原文地址:gitub上的Flexbugs list,可以看到Flex布局在IE糟糕表现的详细描述. 2. Column flex items set to align-items:center ove ...

  10. [Oracle][RMAN]关于Oracle RMAN里面的Merged Incremental Backups的Tag分离机能

    关于Oracle RMAN里面的Merged Incremental Backups的机能,RMAN使用的比较多的DBA们可能会有所了解. 基本上,每次都实行同样的Backup命令即可完成BACK. ...