Browse Source

add scripts

reghao 1 year ago
parent
commit
ba506879e1
4 changed files with 211 additions and 0 deletions
  1. 113 0
      build.sh
  2. 47 0
      deploy.md
  3. 24 0
      shutdown.sh
  4. 27 0
      start.sh

+ 113 - 0
build.sh

@@ -0,0 +1,113 @@
+#!/bin/bash
+
+set -e
+
+env='dev'
+base_dir=`pwd`
+proj_dir="${base_dir}/proj"
+bin_dir="${base_dir}/bin"
+
+# if [ -d ${proj_dir} ]; then
+#     rm -rf ${proj_dir}
+# fi
+
+# if [ -d ${bin_dir} ]; then
+#     rm -rf ${bin_dir}
+# fi
+
+mkdir ${proj_dir}
+mkdir ${bin_dir}
+
+###############################################################################
+# clone 项目
+###############################################################################
+clone_proj() {
+    cd ${proj_dir}
+    git clone --depth=1 https://git.reghao.cn/reghao/jutil
+    git clone --depth=1 https://git.reghao.cn/reghao/oss
+    git clone --depth=1 https://git.reghao.cn/reghao/bnt
+    git clone --depth=1 https://git.reghao.cn/reghao/tnb
+    git clone --depth=1 https://git.reghao.cn/reghao/tnbapp
+}
+
+###############################################################################
+# 安装依赖
+###############################################################################
+build_dependencies() {
+    cd ${proj_dir}/jutil
+    mvn clean install -Dmaven.test.skip
+
+    cd ${proj_dir}/oss
+    mvn clean install -Dmaven.test.skip -pl oss-api
+    mvn clean install -Dmaven.test.skip -pl oss-sdk
+
+    ###############################################################################
+    # 安装 tnb 项目提供的依赖
+    ###############################################################################
+    cd ${proj_dir}/tnb
+    mvn clean install -am -Dmaven.test.skip -pl common
+    mvn clean install -am -Dmaven.test.skip -pl log
+    mvn clean install -am -Dmaven.test.skip -pl account/account-api/
+    mvn clean install -am -Dmaven.test.skip -pl user/user-api/
+    mvn clean install -am -Dmaven.test.skip -pl message/message-api/
+    mvn clean install -am -Dmaven.test.skip -pl content/content-api/
+    mvn clean install -am -Dmaven.test.skip -pl file/file-api/
+    mvn clean install -am -Dmaven.test.skip -pl data/data-api/
+
+    ###############################################################################
+    # 安装 bnt 项目提供的依赖
+    ###############################################################################
+    cd ${proj_dir}/bnt
+    mvn clean install -Dmaven.test.skip -pl admin-api
+}
+
+###############################################################################
+# 构建应用
+###############################################################################
+build_app() {
+    ###############################################################################
+    # 构建 oss 项目 jar 包
+    ###############################################################################
+    cd ${proj_dir}/oss
+    mvn clean package -Dmaven.test.skip -pl oss-store -P${env}
+    mkdir ${bin_dir}/oss-store
+    cp oss-store/bin/* ${bin_dir}/oss-store
+
+    ###############################################################################
+    # 构建 bnt 项目 jar 包
+    ###############################################################################
+    cd ${proj_dir}/bnt
+    mvn clean package -Dmaven.test.skip -pl web -P${env}
+    cp web/bin/bntweb.jar ${bin_dir}
+
+    ###############################################################################
+    # 构建 tnb 项目 jar 包
+    ###############################################################################
+    cd ${proj_dir}/tnb
+    mvn clean package -Dmaven.test.skip -P${env}
+    cp gateway/target/tnb-gateway.jar ${bin_dir}
+    cp account/account-service/target/tnb-account.jar ${bin_dir}
+    cp user/user-service/target/tnb-user.jar ${bin_dir}
+    cp message/message-service/target/tnb-message.jar ${bin_dir}
+    cp file/file-service/target/tnb-file.jar ${bin_dir}
+    cp content/content-service/target/tnb-content.jar ${bin_dir}
+    cp data/data-service/target/tnb-data.jar ${bin_dir}
+
+    ###############################################################################
+    # 构建 tnbapp 项目
+    ###############################################################################
+    cd ${proj_dir}/tnbapp
+    npm --registry http://registry.npm.taobao.org i
+    npm run build
+    mkdir ${bin_dir}/tnbapp
+    cp -r dist/* ${bin_dir}/tnbapp
+}
+
+echo "clone 项目..."
+clone_proj
+
+echo "构建依赖..."
+build_dependencies
+
+echo "构建应用..."
+build_app

+ 47 - 0
deploy.md

@@ -0,0 +1,47 @@
+redis
+```
+host: 192.168.0.11
+port: 6379
+password: 123456
+```
+
+mysql
+```
+host: 192.168.0.11
+port: 3306
+username: test
+password: 123456
+```
+
+mongodb
+```
+host: 192.168.0.11
+port: 27017
+username: test
+password: 123456
+authentication-database: admin
+```
+
+elasticsearch
+```
+host: 127.0.0.1
+port: 9200
+username: elastic
+password: 123456
+```
+
+rabbitmq
+```
+host: 192.168.0.11
+port: 5672
+username: test
+password: 123456
+```
+
+zookeeper
+```
+host: 192.168.0.11
+port: 2181
+
+zookeeper://192.168.0.11:2181
+```

+ 24 - 0
shutdown.sh

@@ -0,0 +1,24 @@
+#!/bin/bash
+
+app_name1='tnb-gateway'
+app_name2='tnb-account'
+app_name3='tnb-user'
+app_name4='tnb-message'
+app_name5='tnb-file'
+app_name6='tnb-content'
+app_name7='tnb-data'
+app_name8='oss-store'
+app_name9='bntweb'
+
+for((i=1; i<=9; i++));
+do
+    app_name=$(eval echo \${app_name$i})
+	pid=`ps aux | grep ${app_name} | grep -v 'grep' | tr -s ' '| cut -d ' ' -f 2`
+    if [[ -z ${pid} ]];
+    then
+        echo ${app_name}" killed"
+    else
+        echo "kill "${app_name}" with pid "${pid}
+        kill -15 ${pid}
+    fi
+done

+ 27 - 0
start.sh

@@ -0,0 +1,27 @@
+#!/bin/bash
+
+set -e
+
+cd bin/
+
+###############################################################################
+# 启动 bnt 项目应用
+###############################################################################
+nohup java -jar bntweb.jar > bntweb.log 2>&1 &
+
+###############################################################################
+# 启动 tnb 项目应用
+###############################################################################
+nohup java -jar tnb-gateway.jar > tnb-gateway.log 2>&1 &
+nohup java -jar tnb-account.jar > tnb-account.log 2>&1 &
+nohup java -jar tnb-user.jar > tnb-user.log 2>&1 &
+nohup java -jar tnb-message.jar > tnb-message.log 2>&1 &
+nohup java -jar tnb-file.jar > tnb-file.log 2>&1 &
+nohup java -jar tnb-content.jar > tnb-content.log 2>&1 &
+nohup java -jar tnb-data.jar > tnb-data.log 2>&1 &
+
+###############################################################################
+# 启动 oss-store 应用
+###############################################################################
+cd oss-store
+bash start.sh