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 "\033[34m>>> SCRIPT START \033[0m"
sleep 0.3

PID=$(ps -ef | grep 'java' | awk '{print $2}')
if [ -n "$PID" ]; then
	for id in $PID
	do
		echo -e "\033[31mSTOP $(ps -ef | grep $id | awk '{print $2"  "$10}' ) \033[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 "\033[34m>>> SCRIPT END \033[0m"

更新部署項目

/home/project/project.sh

查看日志

cd /home/log
tail -fn 10 projet-log.out


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM