美文网首页
spring boot 打成jar包部署到Centos,从环境配

spring boot 打成jar包部署到Centos,从环境配

作者: 角角_d216 | 来源:发表于2020-03-30 23:22 被阅读0次

    一、java环境配置:

    1、因为Centos默认安装有openjdk ,我们要首先卸载openjdk,安装sun JDK:

    rpm -qa|grep java  (列出默认安装的openJDK)

    rpm -e --nodeps  java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64  (全部删除掉上面列出的openJDK)

    2、安装sun JDK ,这里我是采用安装rpm包的方式,安装包可以到官网上下载。

    rpm -ivh jdk-8u111-linux-x64.rpm

    3、配置环境变量,默认应该是安装在/usr/java 目录:

    vi /etc/profile      (编辑profile文件)

    在末尾处添加java环境变量:

    #set java environment

    JAVA_HOME=/usr/java/jdk1.8.0_111

    JRE_HOME=/usr/java/jdk1.8.0_111/jre

    CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

    PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

    export JAVA_HOME JRE_HOME CLASS_PATH PATH

    保存退出,然后验证是否生效:

    source /etc/profile      (使配置生效)

    echo $PATH                (看是否有java相关配置路径输出,如果有证明配置生效)

    java -version              (正常显示 sun jdk 版本)

    二、spring  boot工程maven  pom.xml配置:

    其实spring boot 打成jar包以后,是可以直接像shell脚本一样直接运行的,要实现这样可以直接运行,pom.xml 的build节点需要增加这样的配置:

                <plugin>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-maven-plugin</artifactId>

    <configuration>

    <executable>true</executable>

    </configuration>

    </plugin>

    这样配置后,通过maven打出来的jar 可以直接 执行  ./aabb.jar  就能运行起来。

    chmod 777  aabb.jar    (赋个权限)

    ./aabb.jar              (可以直接运行起来)

    三、配置防火墙策略:

    需要配置一下防火墙策略,开放端口,才可以供其他机器访问你的应用,Centos 6 和 Centos7配置不同:

    1、Centos 6 配置的是iptables :

        ①首先要关闭 selinux 

    vi /etc/selinux/config      (修改 SETLINUX=enforcing  为 SETLINUX=disabled)

    ②添加你的应用端口

    service iptables status          (查看防火墙已经开放的端口)

    iptables -I INPUT -p tcp --dport 8899 -j ACCEPT      (配置开放8899端口)

    service iptables save              (保存配置)

    service iptables restart            (重启iptables)

    service iptables status              (在看一下端口状态,此时应该看到8899端口已经在列表中)

    2、Centos 7 默认使用的是firewall 防火墙:

        ①查看防火墙状态,是否是running

    firewall-cmd --state    (查看防火墙状态 是否running)

    systemctl start firewalld.service    (开启firewalld)

    firewall-cmd --zone=public --add-port=8899/tcp --permanent        (配置开放8899端口)

    firewall-cmd --reload    (重新加载配置)

    iptables -L -n            (查看端口状态,此时8899端口应该在列表中了)

    四、配置spring boot 的jar应用成为开机自启动服务:

    1、添加服务链接

    sudo ln -s /home/user/aabb.jar /etc/init.d/aabb    (aabb是你的服务名,这里要注意的是要写上jar包的完整路径,否则添加服务链接失败)

    2、手动启动一下服务验证是否能成功

    service aabb start          (启动服务)

    ss -lntup|grep 8899          (查看一下应用端口是否已经监听)

    3、添加服务开机自启

    chkconfig --add aabb

    4、查看一下是否添加成功

    chkconfig --list        (此时aabb服务应该已经在列表中)

    service aabb stop        (手动停止服务)

    reboot                    (重启服务器)

    重启服务器后,在查看一下应用端口,或者使用  jps命令, 如果看到你的应用名字,说明配置的

    spring boot应用开机自启成功 , 应用输出控制台日志在   /var/log/aabb.log  文件中。

    相关文章

      网友评论

          本文标题:spring boot 打成jar包部署到Centos,从环境配

          本文链接:https://www.haomeiwen.com/subject/kufiuhtx.html