开发环境搭建

基础设施

  • Ubuntu系统
  • Docker服务

前端环境

目前商户后台采用的vue技术栈,部署步骤如下:

1. 安装nodejs

Ubuntu自带nodejs版本太老,目前来看基本上用不了,可以通过以下几种方式安装。

  • 官方下载

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs

  • 源码安装
    下载nodejs源码文件,官网地址:https://nodejs.org/en/download/
    或者在内部FTP服务器的“/tools/开发工具/”目录下面有。
    然后在Shell终端执行以下命令:

tar zxvf node-v8.11.1.tar.gz
./configure
sudo make
sudo make install

  • 通过开源工具“n”来安装
    在Shell终端执行以下命令:

export N_PREFIX=/opt/n
export PATH=${PATH}:${N_PREFIX}/bin
curl -L https://git.io/n-install | bash -s – -y latest && n lts && n latest

2.安装yarn

yarn是一个nodejs的包管理工具,可以通过以下命令安装

npm install yarn -g

3.clone前端代码到本地

地址:ssh://rdp.beyondsoft.com:22/beyondsoft/Fnb/_git/Fnb-FE.git,与develop分支保持一致即可。

cd 你的工作目录
git clone ssh://rdp.beyondsoft.com:22/beyondsoft/Fnb/_git/Fnb-FE.git

4.安装依赖

代码路径下执行命令yarn

cd FnB-FE代码目录
yarn

5.修改配置

修改FnB-FE目录下/config/dev.env.js文件中的API_ROOT参数的IP地址,指向本地后端API服务的地址

e.g. API_ROOT: ‘"//10.26.1.21:9099/"’

6.启动前端系统,在浏览器打开即可。

在Shell终端执行以下命令:

HOST=10.26.1.21 PORT=8080 yarn dev

注意:

  1. 修改10.26.1.21为你本机IP地址,这样其他机器也可以访问你的前端服务
  2. 如果前端启动正常,并打印出以下信息,则表示一切正常:Your application is running here: http://10.26.1.21:8080
  3. 如果有其他异常,通常情况可能是前端增加了其他依赖库,需要更新。此时需要重新执行yarn命令,然后再启动

yarn
HOST=10.26.1.21 PORT=8080 yarn dev

 

 

 

后端环境

1. 本地安装数据库

在内部FTP服务器的“/tools/Docker/ctl-docker-mysql”目录下面有相应的启动脚本和配置文件,无须修改,拷贝到本地。
在Shell终端执行以下命令即可。

chmod a+x ctl_com_mysql.sh
./ctl_com_mysql.sh

注意:后续如果使用Redis服务,可以在FTP的“ctl-docker-redis”目录下面找到启动脚本和配置文件,操作同上即可。

注意,如果之前没有安装docker的话,请参考Development文档里面所有涉及DOCKER字样的内容。
正常确定没有其他问题的话,你本地就有MySQL可用了,修改FnB后端配置文件,替换数据库配置的IP为localhost即可。

url: jdbc:mysql://${DB_HOST:localhost} xxxxx

目前后端都已经通过flyway进行数据库升级管理,无须手动再做任何初始化的操作,只要后端服务可以正常启动,所有基础数据就会自动创建好。

删库后重新执行Flyway

备份原表数据(flyway_version表除外)

利用工具备份原库的数据,flyway的系统表不用备份

删除fnb_sell

删除原来的库

新建fnb_sell库

手动创建fnb_sell库

启动程序,执行flyway

执行flyway,会建表并添加初始数据

删除初始数据(新库不用这一步)

因为我们要导入备份的数据,所以要先删除flyway导入的初始数据。如果是一个新环境,不用这一步。

use fnb_sell;
SET FOREIGN_KEY_CHECKS = 0;
delete from b_description_category;
delete from b_description_category_detail;
delete from b_discount;
delete from b_discount_product;
delete from b_employee;
delete from b_employee_role;
delete from b_invite_code;
delete from b_invoice;
delete from b_order;
delete from b_order_op_record;
delete from b_order_product_detail;
delete from b_order_product_subtract;
delete from b_package;
delete from b_package_category;
delete from b_package_group;
delete from b_package_group_product;
delete from b_package_product_detail;
delete from b_payment_product;
delete from b_payment_setting;
delete from b_printer;
delete from b_printer_area_map;
delete from b_printer_bill;
delete from b_printer_brand;
delete from b_printer_product_map;
delete from b_printer_ticket_map;
delete from b_privilege;
delete from b_product;
delete from b_product_flavor;
delete from b_product_flavor_tag;
delete from b_product_printer;
delete from b_product_spec;
delete from b_product_tag_map;
delete from b_region;
delete from b_role;
delete from b_role_bprivilege_map;
delete from b_role_exclude_privilege_map;
delete from b_shop;
delete from b_shop_area;
delete from b_shop_config;
delete from b_store;
delete from b_store_vip;
delete from b_table;
delete from b_trade;
delete from b_up_record;
delete from b_up_record_pay_setting;
delete from p_app_info;
delete from p_apps;
delete from p_payment_channel;
delete from p_platform;
delete from p_ticket_category;
delete from p_user;
delete from p_user_question;
delete from p_user_question_detail;
delete from p_user_role;

导入备份数据

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章