spring boot 打成jar包部署到Centos,从环境配置到开机启动服务
2018-04-06 03:06
1116 查看
一、java环境配置:
1、因为Centos默认安装有openjdk ,我们要首先卸载openjdk,安装sun JDK:
2、安装sun JDK ,这里我是采用安装rpm包的方式,安装包可以到官网上下载。
3、配置环境变量,默认应该是安装在/usr/java 目录:
在末尾处添加java环境变量:
保存退出,然后验证是否生效:
二、spring boot工程maven pom.xml配置:
其实spring boot 打成jar包以后,是可以直接像shell脚本一样直接运行的,要实现这样可以直接运行,pom.xml 的build节点需要增加这样的配置:
这样配置后,通过maven打出来的jar 可以直接 执行 ./aabb.jar 就能运行起来。
三、配置防火墙策略:
需要配置一下防火墙策略,开放端口,才可以供其他机器访问你的应用,Centos 6 和 Centos7配置不同:
1、Centos 6 配置的是iptables :
①首先要关闭 selinux
②添加你的应用端口
2、Centos 7 默认使用的是firewall 防火墙:
①查看防火墙状态,是否是running
四、配置spring boot 的jar应用成为开机自启动服务:
1、添加服务链接
2、手动启动一下服务验证是否能成功
3、添加服务开机自启
4、查看一下是否添加成功
重启服务器后,在查看一下应用端口,或者使用 jps命令, 如果看到你的应用名字,说明配置的
spring boot应用开机自启成功 , 应用输出控制台日志在 /var/log/aabb.log 文件中。
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 文件中。
相关文章推荐
- Centos搭建nginx环境,编译,添加服务,开机启动。
- CentOS 7环境配置tomcat7开机启动
- centos7 配置nginx服务、开机自动启动
- centos7 配置nginx服务、设置开机自动启动
- Centos7.x:开机启动服务的配置和管理
- centos 6.5+ 开机自动联网配置 && 开启启动服务
- CentOS 7上安装nsq,并配置系统服务、开机启动
- CentOS 5.6 下离线部署NodeJS环境和工程代码,并添加forever的开机自启动服务
- CentOS7 下配置Keepalived为系统服务,开机自动启动。
- centos6.5 配置tomcat8 为系统服务,开机自启动
- CentOS7 下配置Keepalived为系统服务,开机自动启动。
- centos 下安装nsq,配置开机启动服务
- Centos7手动部署Openstack Mitaka版安装配置--(四)安装镜像服务glance
- Linux Centos7.3 开机启动 Redis 服务
- centos开机自动启动SVN服务的方法1、编辑rc.local文件
- tomcat8在centos7.5下配置开机启动
- CentOS Linux下配置Oracle 11gR2为系统服务自动启动
- CentOS设置开机自动启动某服务
- Centos设置服务开机启动的两种方法
- 配置redhat开机自启动服务