第06篇 部署区块链浏览器(1)

本文基于POA联盟链部署开源区块链浏览器。

浏览器源码选用:https://github.com/carsenk/explorer

操作系统:centos_7_06_64

查找文件或目录:

find / -name 'filename'              //查找文件
find / -name 'path' -type d          //查找目录
find . | xargs grep -ri 'content'    //查找内容

1、安装docker

执行命令进行安装:

[root@explorer1]# yum -y install docker

Installed:
  docker.x86_64 2:1.13.1-161.git64e9980.el7_8                                                                                                                                                                    

Dependency Installed:
  atomic-registries.x86_64 1:1.22.1-33.gitb507039.el7_8           container-selinux.noarch 2:2.119.1-1.c57a6f9.el7                             container-storage-setup.noarch 0:0.11.0-2.git5eaf76c.el7        
  containers-common.x86_64 1:0.1.40-7.el7_8                       device-mapper-event.x86_64 7:1.02.164-7.el7_8.2                              device-mapper-event-libs.x86_64 7:1.02.164-7.el7_8.2            
  device-mapper-persistent-data.x86_64 0:0.8.5-2.el7              docker-client.x86_64 2:1.13.1-161.git64e9980.el7_8                           docker-common.x86_64 2:1.13.1-161.git64e9980.el7_8              
  fuse-overlayfs.x86_64 0:0.7.2-6.el7_8                           fuse3-libs.x86_64 0:3.6.1-4.el7                                              libaio.x86_64 0:0.3.109-13.el7                                  
  libnl.x86_64 0:1.1.4-3.el7                                      libxml2-python.x86_64 0:2.9.1-6.el7.4                                        lvm2.x86_64 7:2.02.186-7.el7_8.2                                
  lvm2-libs.x86_64 7:2.02.186-7.el7_8.2                           oci-register-machine.x86_64 1:0-6.git2b44233.el7                             oci-systemd-hook.x86_64 1:0.2.0-1.git05e6923.el7_6              
  oci-umount.x86_64 2:2.5-3.el7                                   python-dateutil.noarch 0:1.5-7.el7                                           python-dmidecode.x86_64 0:3.12.2-4.el7                          
  python-ethtool.x86_64 0:0.8-8.el7                               python-inotify.noarch 0:0.9.4-4.el7                                          python-pytoml.noarch 0:0.1.14-1.git7dea353.el7                  
  python-syspurpose.x86_64 0:1.24.26-3.el7.centos                 slirp4netns.x86_64 0:0.4.3-4.el7_8                                           subscription-manager.x86_64 0:1.24.26-3.el7.centos              
  subscription-manager-rhsm.x86_64 0:1.24.26-3.el7.centos         subscription-manager-rhsm-certificates.x86_64 0:1.24.26-3.el7.centos         usermode.x86_64 0:1.111-6.el7                                   
  yajl.x86_64 0:2.0.4-4.el7                                      

Dependency Updated:
  device-mapper.x86_64 7:1.02.164-7.el7_8.2                              device-mapper-libs.x86_64 7:1.02.164-7.el7_8.2                              libxml2.x86_64 0:2.9.1-6.el7.4                             

Complete!

启动docker:

[root@explorer1]# service docker start

默认安装到目录 /var/lib/docker:

[root@explorer1]# cd /var/lib/docker
[root@docker]# ls
containers  image  network  overlay2  plugins  swarm  tmp  trust  volumes

如果要停止docker:

[root@explorer1]# service docker stop

 

2、下载浏览器源码

下载开源浏览器代码:

[root@explorer1]# docker pull julianliu/eth-explorer:latest
Trying to pull repository docker.io/julianliu/eth-explorer ... 
latest: Pulling from docker.io/julianliu/eth-explorer
49388a8c9c86: Pull complete 
5bd1cf64bd61: Pull complete 
3eceb429d2da: Pull complete 
4adac9542b2d: Pull complete 
a42b4f2f5dee: Pull complete 
Digest: sha256:2d54cd3ea8c7be70cc9810e94f104257c13ce7069286ff0825bdc14257fb1ac5
Status: Downloaded newer image for docker.io/julianliu/eth-explorer:latest

默认安装到目录:

开启容器,开放8000端口:

[root@explorer1]# docker run -d -p 8000:8000 julianliu/eth-explorer
972b5fceea4ed434c3c1de06d8a7191d9bc24022486337492255d17390b53170

此时,就可以看到浏览器页面了:

尚没有数据。

停止一个正在运行的容器:

1、docker stop 容器ID或容器名                           //此方式常常被翻译为优雅的停止容器
参数 -t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态
docker stop -t=60 容器ID或容器名

2、docker kill 容器ID或容器名                           //直接关闭容器
stop和kill的主要区别:stop给与一定的关闭时间交由容器自己保存状态,kill直接关闭容器

3、docker restart 容器ID或容器名                        //不管容器是否启动,直接重启容器
参数 -t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态

 

3、配置文件修改

修改app/app.js 文件;把GETH_HOSTNAME 改成自己的GETH节点IP,GETH_RPCPORT端口改成节点RPC端口;

同时修改app/index.html ,查找使用“ajax.googleapis.com”,把对应的js文件angular.min.js和jquery.min.js下载到本地,修改src路径;或者(本文实际按以下做法):

搜索国内可用的angular.min.js和jquery.min.js;比如本文将这两项修改为:

  
  

参考:http://www.jq22.com/jquery-info122

          https://www.angularjs.net.cn/download/

关闭然后重新启动docker;

访问自己的浏览器,提示:

第06篇 部署区块链浏览器(1)_第1张图片

 

4.启动节点

按照提示启动相应的geth节点:

./geth --datadir ./node/ --networkid 517 --port 30309 --rpc --rpcaddr 0.0.0.0 --rpcport 8549 --rpcapi personal,db,eth,net,web3,admin --rpccorsdomain * --syncmode full --nodiscover --allow-insecure-unlock

然后刷新浏览器页面,完美呈现:

第06篇 部署区块链浏览器(1)_第2张图片

 

 

 

你可能感兴趣的:(第06篇 部署区块链浏览器(1))