• Linux 下搭建 SpringBoot 项目自动化部署环境


    Linux 下搭建 SpringBoot 项目自动化部署环境

    # 系统环境
    Alibaba Cloud ESC Linux CentOS 7.9
    

    准备文件夹

    # 存放日志文件
    /home/log
    # 存放 maven 以及本地仓库
    /home/ProgrammingTool
    # 存放项目
    /home/project
    

    环境安装

    JDK 安装配置

    安装

    # 下载 rpm 安装包
    https://www.oracle.com/java/technologies/oracle-java-archive-downloads.html
    
    # 安装指令
    rpm -ivh jdk-8u261-linux-x64.rpm
    

    检验安装

    # 查看版本
    java -version
    

    GIT 安装配置

    安装

    # 直接下载安装
    yum -y install git
    

    检验安装

    git
    

    配置

    git config --global user.name "wangxiang"
    git config --global user.email "276644985@qq.com"
    

    MAVEN 安装配置

    安装

     # 下载 apache-maven-3.6.3-bin.tar.gz
     https://maven.apache.org/download.cgi
     
     # 或者
     wget https://mirror.bit.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
     
     #如果没有 wget 输入
     yum -y install wget
    
     # 解压 (../ProgrammingTool/ 是解压到指定目录)
     tar zxvf apache-maven-3.6.3-bin.tar.gz -C ../ProgrammingTool/
    

    配置

    # 打开文件配置文件 
    /etc/profile
    
    # 添加以下配置
    export MAVEN_HOME=/home/ProgrammingTool/apache-maven-3.6.3
    export MAVEN_HOME
    export PATH=$PATH:$MAVEN_HOME/bin
    
    # 生效改动配置
    source /etc/profile
    

    检验安装

    mvn -version
    

    修改 maven 配置文件

    # 打开配置文件
    /home/ProgrammingTool/apache-maven-3.6.3/conf/settings.xml
    
    # 修改配置如下
    
    <?xml version="1.0" encoding="UTF-8"?>
    
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
       
      <!-- 设置仓库目录 -->
      <localRepository>/home/ProgrammingTool/maven_repository</localRepository>
    
      <pluginGroups></pluginGroups>
      <proxies></proxies>
      <servers></servers>
    
      <!-- 设置中央仓库镜像地址 -->
      <mirrors>
        <mirror>
          <id>aliyunmaven</id>
          <mirrorOf>*</mirrorOf>
          <name>Alibaba Cloud Maven</name>
          <url>https://maven.aliyun.com/repository/public</url>
        </mirror>
    
        <mirror>
          <id>aliyunmaven</id>
          <mirrorOf>central</mirrorOf>
          <name>AliCloud public repository</name>
          <url>https://maven.aliyun.com/repository/public</url>
        </mirror>
    
        <mirror>
          <id>alimaven</id>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
          <mirrorOf>central1</mirrorOf>
        </mirror>
    
        <mirror>
          <id>net-cn</id> 
          <mirrorOf>central2</mirrorOf> 
          <name>Human Readable Name for this Mirror.</name> 
          <url>http://maven.net.cn/content/groups/public/</url> 
        </mirror>
        
      </mirrors>
      <profiles></profiles>
    
    </settings>
    

    拉取项目

    cd /home/project
    git clone https://gitee.com/Haidnor/AlibabaCloudLinuxProjetc.git
    

    编写 shell 脚本

    #!/bin/bash
    echo ""
    echo -e "33[34m>>> SCRIPT START 33[0m"
    sleep 0.3
    
    PID=$(ps -ef | grep 'java' | awk '{print $2}')
    if [ -n "$PID" ]; then
    	for id in $PID
    	do
    		echo -e "33[31mSTOP $(ps -ef | grep $id | awk '{print $2"  "$10}' ) 33[0m"
    		kill -9 $id
    	done
    fi
    
    projec_dir='/home/project/AlibabaCloudLinuxProjetc'
    cd $projec_dir
    
    git pull
    mvn clean package -Dmaven.test.skip=true
    
    cd /
    nohup java -jar ./home/project/AlibabaCloudLinuxProjetc/target/linux-1.0.jar > /home/log/projet-log.out  2>&1 &
    
    echo -e "33[34m>>> SCRIPT END 33[0m"
    

    更新部署项目

    /home/project/project.sh
    

    查看日志

    cd /home/log
    tail -fn 10 projet-log.out
    
  • 相关阅读:
    使用 Selenium
    Senium 简介
    第8章 动态渲染页面爬取
    Ajax 结果提取
    Ajax 分析方法
    WINDOW 2008多人访问设置
    Windows 2012设置允许单个用户连接多个会话的方法
    Windows Server 2012开启多人远程
    BOM 表
    修复材料工单分配材料订单重复占料问题的开发
  • 原文地址:https://www.cnblogs.com/Haidnor/p/14283060.html
Copyright © 2020-2023  润新知