安装一台和无网络环境一样的虚拟机,在有网的情况下在线安装,然后上传至无网络的系统之中完成部署。无网络离线安装部署FISCO BCOS区块链浏览器分为离线zip包的方式和虚拟机git clone方式
<font color=#999AAA >最近经常有小伙伴问到:生产环境没有网络怎么部署FISCO BCOS以及各种中间件呢?在网上目前也找不到相关的资料,所以这里就抽空闲时间来做一下相关的教程,方便小伙伴们快速入坑。这里以centos7.5为例、其他操作系统类似,前面的章节已经离线部署的FISCO BCOS的底层,现在我们来离线部署我们的区块链浏览器fisco-bcos-browser</font>
安装一台和无网络环境一样的虚拟机,在有网的情况下在线安装,然后上传至无网络的系统之中完成部署。无网络离线安装部署FISCO BCOS区块链浏览器分为离线zip包的方式和虚拟机git clone方式。由于区块链浏览器依赖如下:
环境 | 版本 |
---|---|
Java | JDK8或以上版本 |
MySQL | MySQL-5.6或以上版本 |
Python | Python3.4+ |
PyMySQL | 使用python3时需安装 |
所以我们要安装区块链浏览器之前得先离线安装上表中的环境。
本地虚拟机环境(有网络): 服务器: 10.21.36.166 (无网络)
也可以参考:https://blog.csdn.net/wangleiqqaaaaa/article/details/103522647
下载JDK 下载JDK可通过官网下载:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html,也可以通过某云下载:`https://pan.baidu.com/s/1ywRY3aI8UdHrLwdi6crVuQ,提取码:u3zy`
安装JDK 将下载好的JDK的tar.gz的包通过scp服务器上传到想要安装的目标服务器然后解压
配置java的环境变量 修改 /etc/profile文件,配置java的环境变量
$ vi /etc/profile
输入i 进入编辑模式,复制一下内容:
export JAVA_HOME=/app/jvm/jdk1.8.0_172
export JRE_HOME= ${JAVA_HOME}/jre
export CLASSPATH=.: ${JAVA_HOME}/lib: ${JRE_HOME}/lib
export PATH= ${JAVA_HOME}/bin: $PATH
注意:由于csdn的文章编辑模式中" $ “属于转意符号,上面的内容我在每一个”$“后面都加了空格,复制的时候要将” $ "后面的空格去掉。
然后使用:wq 命令保存退出
$ :wq
退出后使用source命令是文件立即生效
$ source /etc/profile
验证安装是否成功
$ java -version
1.下载mysql
https://download.csdn.net/download/ws327443752/13102504
2.上传至服务器相关的路径下
3.安装新版mysql前,需将系统自带的mariadb-lib卸载 也可以安装这个文章操作一遍: https://www.jianshu.com/p/ef58fb333cd6
rpm -qa|grep mariadb
rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps
4.解压上传的mysql文件
tar -xf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar
依次执行安装命令
rpm -ivh mysql-community-common-*.rpm
rpm -ivh mysql-community-libs-*.rpm
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-server-5.7*.rpm --nodeps --force
rpm -ivh mysql-community-devel-5.7.28-1.el7.x86_64.rpm --nodeps --force
初始化数据库
//指定datadir, 执行后会生成~/.mysql_secret密码文件
mysql_install_db --datadir=/var/lib/m
//初始化,执行生会在/var/log/mysqld.log生成随机密码
mysqld --initialize
// 更改mysql数据库目录的所属用户及其所属组
chown mysql:mysql /var/lib/mysql -R
//启动数据库服务
service mysqld start
// 查看密码
cat /var/log/mysqld.log
// 登录到mysql
mysql -uroot -p'密码'
// 修改密码
mysql> set password=password('xxxxxx');
ps:当然,这里可以为每个应用创建相应的账号分配相关的权限来保证数据的安全性。这里就不做过多的演示。
备注:使用python2.7+时,需安装MySQL-python。centos7.5默认是Python 2.7.5 下载地址: python-devel-2.7.5-34.el7.x86_64.zip MySQL-python-1.2.5.zip
下载后上传至服务器相关的位置,并解压
// 查找mysql_config
find / -name 'mysql_config'
//进入MySQL-python文件夹编辑site文件,修改下图箭头所指的位置的路径为上面查找出来的地址
vi site.cfg
// 安装python-devel-2.7.5-34.el7.x86_64.rpm
rpm -ivh python-devel-2.7.5-34.el7.x86_64.rpm --nodeps --force
// 安装MySQL-python
python setup.py install
1.将包解压后传输到linux服务器上
2.进入gcc包和gcc-c++分别运行
rpm -Uvh *.rpm --nodeps --force
3.安装pcre:
tar -zxvf pcre-8.00.tar.gz
./configure
make
make install
4.安装openssl:
tar -zxvf openssl-fips-2.0.16.tar.gz
./config
make
make install
5.安装zlib:
tar -zxvf zlib-1.2.11.tar.gz
./configure
make
make install
6.安装nginx:
tar -zxvf nginx-1.17.8.tar.gz
./configure
make
make install
7.执行 nginx命令:
cd /usr/local/nginx/sbin
./nginx;
如果报错: ./nginx: error while loading shared libraries: libpcre.so.0: cannot open shared object file: No such file or directory
解决方案:
[root@qkl-10-21-36-166 sbin]# find / -name libpcre.so
find: â/proc/60636â: No such file or directory
find: â/run/user/1000/gvfsâ: Permission denied
/usr/local/lib/libpcre.so
/fisco/nginx/pcre-8.00/.libs/libpcre.so
[root@qkl-10-21-36-166 sbin]# ln -s /usr/local/lib/libpcre.so /lib64/libpcre.so.0
[root@qkl-10-21-36-166 sbin]# ./nginx
2.上传到服务器上解压后得到下图所示文件:
// 进入server文件夹执行
chmod +x *.sh
3.运行服务端
bash ./start.sh
如下图所示表示运行成功: 4.在nginx中运行前端,修改nginx的配置文件如下:
server {
listen 5100 default_server; #步骤1、前端nginx监听端口
server_name 192.168.0.1; #步骤1、前端地址,可配为域名
location / {
root /data/app/web/dist; #步骤2、前端文件路径
index index.html index.htm;
try_files $uri $uri/ /index.html =404;
}
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location /api {
proxy_pass http://192.168.0.1:5101/; #步骤3、后端服务(fisco-bcos-browser server)地址及端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
5.重启nginx
./nginx -s reload
6.浏览器访问相关的页面
1.在有网络的虚拟机中或者本机中拉取区块链浏览器源码
git clone https://github.com/FISCO-BCOS/fisco-bcos-browser.git
2.把clone下来的文件打包上传到无网络的服务器中解压 3.修改配置
// 这里是重点要修改的点,可以把下载下来的fisco-bcos-browser.zip放到一个可以在内部下载的地址。
package.url=http://10.21.36.166/fisco-bcos-browser.zip
python deploy.py installAll
<font color=#999AAA > 无网络离线安装部署FISCO BCOS区块链浏览器还是推荐离线zip包的方式去安装,简单快速。不需要安装MySQL-python依赖环境。虚拟机git clone方式较为复杂,不推荐。希望可以帮助有需要的小伙伴快速入坑!
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!