• 虚拟机搭建FISCO BCOS的区块链浏览器


    一键搭建

    注:根据官方文档搭建,大部分与官方文档相似。我自己修改了部分代码,并对部分报错进行了解决
    这次使用的是一键搭建,适合前后端同机部署,快速体验的情况使用

    具体安装步骤

    1. 依赖环境

      环境版本
      Java JDK8或以上版本
      MySQL MySQL-5.6或以上版本
      Python Python3.4+
      PyMySQL 使用python3时需安装

    MySQL安装-> 安装MariaDBMariaDB数据库是 MySQL 的一个分支,主要由开源社区在维护,采用 GPL 授权许可。MariaDB完全兼容 MySQL,包括API和命令行。

    1. 安装

      sudo yum install -y mariadb*
      
    2. 启动-停止

      启动:sudo systemctl start mariadb.service
      停止:sudo systemctl stop  mariadb.service
      
    3. 设置开机启动

      sudo systemctl enable mariadb.service
      
    4. 初始化

      执行以下命令:
      sudo mysql_secure_installation
      以下根据提示输入:
      Enter current password for root (enter for none):<–初次运行直接回车
      Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
      New password: <– 设置root用户的密码
      Re-enter new password: <– 再输入一次你设置的密码
      Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车
      Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车
      Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车
      Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车
      
    5. 授权访问和添加用户

      1. 使用root用户登录,密码为初始化设置的密码

        mysql -uroot -p -h localhost -P 3306
        
      2. 授权root用户远程访问

        mysql > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
        mysql > flush PRIVILEGES;
        
      3. 创建test用户并授权本地访问

        mysql > GRANT ALL PRIVILEGES ON *.* TO 'test'@localhost IDENTIFIED BY '123456' WITH GRANT OPTION;
        mysql > flush PRIVILEGES;
        
      4. 安全温馨提示:

        • 例子中给出的数据库密码(123456)仅为样例,强烈建议设置成复杂密码
        • 例子中root用户的远程授权设置会使数据库在所有网络上都可以访问,请按具体的网络拓扑和权限控制情况,设置网络和权限帐号
    6. 测试连接和创建数据库

      1. 登录数据库

        mysql -utest -p123456 -h localhost -P 3306
        
      2. 创建数据库

        mysql > create database db_browser;
        

    Python的安装

    编辑工具

    ## 注意: 切换到root用户执行以下命令
    yum -y install epel-release
    yum install python-pip
    yum install wget
    yum install gcc
    yum -y install zlib*
    

    下载安装包

    wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tar.xz
    

    解压并移动到/user/local

    tar -xvf Python-3.8.5.tar.xz
    mv Python-3.8.5 /usr/local/Python3
    

    安装

    cd /usr/local/Python3
    ./configure --prefix=/usr/local/Python3 --enable-optimizations --with-ssl 
    #第一个指定安装的路径,不指定的话,安装过程中可能软件所需要的文件复制到其他不同目录,删除软件很不方便,复制软件也不方便.
    #第二个可以提高python10%-20%代码运行速度.
    #第三个是为了安装pip需要用到ssl,后面报错会有提到.
    make && make install
    

    后续配置

    mv /usr/bin/python /usr/bin/python.bak # bei
    ln -s /usr/local/Python3/bin/python3.6 /usr/bin/python
    # 测试
    python -V
    # 修改
    
    vi /usr/bin/yum
    把#! /usr/bin/python修改为#! /usr/bin/python2
     
    vi /usr/libexec/urlgrabber-ext-down
    把#! /usr/bin/python 修改为#! /usr/bin/python2
    

    搭建浏览器

    1. 获取代码

      git clone https://github.com/FISCO-BCOS/fisco-bcos-browser.git  # 从github获取 
      git clone https://gitee.com/FISCO-BCOS/fisco-bcos-browser.git # 从gitee获取,实测速度很快
      # 以上命令使用一个就行,建议使用gitee
      
    2. 切换目录

      cd fisco-bcos-browser/deploy
      

    修改配置文件

    vi common.properties
    # 根据字段名修改前面自己安装的环境
    

    部署

    1. 部署所有服务:

      python deploy.py installAll
      
      1. 注:我在执行上述命令的时候报错了,内容如下

      2. 解决方法:

      1. 查看错误信息:提示不支持我的平台,只支持centos,ubuntu,suse
      2. 但是我的系统就是centos7
      3. 通过查看 comm/check.py文件,发现报错代码块的具体内容如下:
      
      def installByYum(server):
          if isCentos():
              result = doCmdIgnoreException("sudo yum -y install {}".format(server))
              if result["status"] != 0:
                  os.system("sudo yum -y install epel-release")
                  os.system("sudo yum -y install python-pip")
                  os.system("pip install requests")
                  result = doCmd("sudo yum -y install {}".format(server))
          elif isSuse():
              os.system("sudo zypper install -y {}".format(server))
          elif isUbuntu():
              os.system("sudo apt-get install -y {}".format(server))
          else:
              raise Exception("error,not support this platform,only support centos,suse,ubuntu.")
          return
      4. 我猜测,因为linux发行版不同,安装软件的方法也不同,例如:Ubuntu使用apt,centos使用yum。
      5. 只需把 if isCentos(): 修改为1即可
      6. 第五步就是自行修改了代码,因为我是centos系统,但是代码没识别出来,这样修改了以后 ,代码就会使用 yum 命令安装软件(注:如果报相同的错,请根据自己的系统修改这部分代码)
      
    2. 成功截图

    1. 使用浏览器访问 http://127.0.0.1:5100/ (因为我是在虚拟机部署的,所以在本机地址打开)

    2. 网页显示截图

     
  • 相关阅读:
    UVA 12901 Refraction 折射 (物理)
    UVA 12898
    UVA 690 PipelineScheduling 位运算+dfs+剪枝
    UVA1602 Lattice Animals 网格动物 (暴力,STL)
    UVA 810 A Dicey Promblem 筛子难题 (暴力BFS+状态处理)
    UVA 1600 Patrol Robert 巡逻机器人 (启发搜索BFS)
    UVA 536 TreeRocvery 树重建 (递归)
    二分查找
    OI记忆口诀
    OI经典语录
  • 原文地址:https://www.cnblogs.com/exmyth/p/13667249.html
Copyright © 2020-2023  润新知