zoukankan      html  css  js  c++  java
  • 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
    
  • 相关阅读:
    HTML_项目符号使用图片
    字符串查找和替换接口
    AOP代理分析
    3星|董藩《房地产的逻辑》:应该鼓励开发商多盖房而不是惩罚开发商
    2.5星|郎咸平《拯救世界的经济学》:各发达国家与中国的福利政策、经济干预政策的前世今生
    3.5星|科特勒《营销革命4.0》:打造无缝衔接的线上和线下体验
    3星|《韩国式资本主义》:财阀祸害韩国,韩国需要正义的资本主义
    4星|《特朗普时代的全球化战略》:管理学界和管理者可能严重低估了核心管理实践的价值
    2星|《内容创业》:知识付费行业的公开资料整理汇编
    3星|《身边的博弈》:10年旧书,博弈论科普和习题讲解
  • 原文地址:https://www.cnblogs.com/Haidnor/p/14283060.html
Copyright © 2011-2022 走看看