项目部署---shell脚本自动部署项目

通过shell脚本自动部署项目

  1. 操作步骤:
    • 在Linux中安装Git
    • 在Linux中安装maven
    • 编写shell脚本(拉取代码、编译、打包、启动)
    • 为用户授予执行shell脚本的权限
    • 执行shell脚本

执行过程:Linux服务器(编译、打包、启动)<=pull= Git仓库 <=push= 本地开发环境

  • 在Linux中安装Git

    yum list git 列出git安装包

    yum install git 在线安装git

在这里插入图片描述

  • 使用Git克隆代码

    cd /usr/local

    git clone https://gitee.com/chen_yi_001/mavenprojects.git

    在这里插入图片描述

这里需要注意的就是:如果是私有库的话需要输入码云平台的账号密码,才可以克隆!!!

  • 将maven安装包上传到Linux,在Linux中安装maven

    tar -zxvf apache-maven*** -C /usr/local

    vim /etc/profile 修改配置文件,加入如下内容

    export MAVEN_HOME=/usr/local/apache-maven-3.5.4 对应的版本号

    export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:MAVEN_HOME/bin:$PATH

在这里插入图片描述

source /etc/profile

mvn -version

vim /usr/local/apache-maven-3.5.4/conf/settings.xml 修改配置文件内容如下

/usr/local/repo

  • 将shell脚本文件复制到Linux bootStart.sh

    shell脚本(shell script),是一种Linux系统中的脚本程序

    使用shell脚本编程跟javaScript,java编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。

    #!/bin/sh
    echo =================================
    echo  自动化部署脚本启动
    echo =================================
    
    echo 停止原来运行中的工程
    APP_NAME=reggie_take_out
    
    tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
    if [ ${tpid} ]; then
        echo 'Stop Process...'
        kill -15 $tpid
    fi
    sleep 2
    tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
    if [ ${tpid} ]; then
        echo 'Kill Process!'
        kill -9 $tpid
    else
        echo 'Stop Success!'
    fi
    
    echo 准备从Git仓库拉取最新代码
    cd /usr/local/javaapp/reggie_take_out
    
    echo 开始从Git仓库拉取最新代码
    git pull
    echo 代码拉取完成
    
    echo 开始打包
    output=`mvn clean package -Dmaven.test.skip=true`
    
    cd target
    
    echo 启动项目
    nohup java -jar reggie_take_out-1.0-SNAPSHOT.jar &> reggie_take_out.log &
    echo 项目启动完成
    
    
  • 为用户授权

    • chmod(change mode)命令是控制用户对文件的权限的命令

      Linux中的权限分为:读(r)、写(w)、执行(x)三种权限

      Linux的文件调用权限分为三级:文件所有者(Owner)、用户组(Group)、其他用户(Other Users)

      只有文件的所有者和超级用户可以修改文件或者目录的权限

      要执行shell脚本需要有对此脚本文件的执行权限,如果没有则不能执行

  • chmod命令可以使用八进制数来指定权限

    <tr>
    	<td>7</td>
        <td>读+写+执行</td>
        <td>rwx</td>
    </tr>
    <tr>
    	<td>6</td>
        <td>读+写</td>
        <td>rw</td>
    </tr>
    <tr>
    	<td>5</td>
        <td>读+执行</td>
        <td>rx</td>
    </tr>
    <tr>
    	<td>4</td>
        <td>读</td>
        <td>r</td>
    </tr>
    <tr>
    	<td>3</td>
        <td>写+执行</td>
        <td>wx</td>
    </tr>
    <tr>
    	<td>2</td>
        <td>写</td>
        <td>w</td>
    </tr>
    <tr>
    	<td>1</td>
        <td>执行</td>
        <td>x</td>
    </tr>
    <tr>
    	<td>0</td>
        <td>无</td>
        <td></td>
    </tr>
    
    #权限rwx
  • 设置静态ip(虚拟机需要设置)

在这里插入图片描述

  • 重启网络服务

    systemctl restart network

    注意:重启完网络服务后ip地址已经发生改变,此时xshell已经连接不上Linux系统,需要创建一个新连接才能连接到Linux。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈毓辰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值