从零开始在CentOS7上部署Spring Boot项目,大致分为以下几个步骤:
- 安装Java环境
在CentOS7上部署Spring Boot项目,首先需要安装Java环境。可以通过以下命令安装:
yum install java-1.8.0-openjdk-devel
安装完成后,可以通过以下命令查看Java版本:
java -version
- 安装Maven
Spring Boot项目的构建工具是Maven,因此需要安装Maven。可以通过以下命令安装:
yum install maven
安装完成后,可以通过以下命令查看Maven版本:
mvn -v
- 编写Spring Boot项目代码
在本地编写好Spring Boot项目代码后,可以通过以下命令打包:
mvn clean package
打包完成后,会在target
目录下生成一个可执行的jar包。
- 将jar包拷贝到服务器上
可以通过以下命令将jar包拷贝到服务器上:
scp target/demo.jar root@服务器IP:/root
其中,demo.jar
为打包生成的可执行的jar包,root
为服务器用户名,服务器IP
为服务器的IP地址,/root
为jar包要拷贝到的服务器目录。
- 使用systemd设置Spring Boot项目服务
使用systemd可以将Spring Boot项目设置为系统服务,实现自启动、运行状态监控等功能。可以通过以下命令在/etc/systemd/system
目录下创建一个demo.service
文件:
vim /etc/systemd/system/demo.service
然后在demo.service
文件中添加以下内容:
[Unit]
Description=Demo Spring Boot Service
[Service]
ExecStart=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/bin/java -jar /root/demo.jar
Restart=always
User=root
Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64
Environment=PATH=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[Install]
WantedBy=multi-user.target
其中,Description
为服务描述,ExecStart
为服务启动命令,Restart
为服务异常重启策略,User
为服务执行的用户,Environment
为服务环境变量,WantedBy
为服务安装到multi-user.target目录下。
修改完成后,可以使用以下命令启动服务:
systemctl enable demo.service
systemctl start demo.service
然后可以通过以下命令查看服务运行状态:
systemctl status demo.service
以上是部署Spring Boot项目的主要步骤,下面给出两个示例:
示例一:编写一个简单的Spring Boot应用程序,实现将一个字符串输出到控制台,打包成jar包,然后部署到CentOS7服务器上。
- 创建一个Spring Boot项目
使用Spring Initializr创建一个简单的Spring Boot项目。
- 编写代码
在src/main/java
目录下创建一个名为DemoApplication.java
的文件,内容如下:
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
System.out.println("Hello, Spring Boot!");
}
}
在pom.xml
文件中添加以下依赖:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
- 打包
在项目根目录下执行以下命令打包:
mvn clean package
- 将jar包拷贝到服务器上
使用以下命令将target
目录下的demo-0.0.1-SNAPSHOT.jar
文件拷贝到服务器上:
scp target/demo-0.0.1-SNAPSHOT.jar root@服务器IP:/root
- 设置systemd服务
在/etc/systemd/system
目录下创建一个demo.service
文件:
vim /etc/systemd/system/demo.service
添加以下内容:
[Unit]
Description=Demo Spring Boot Service
[Service]
ExecStart=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/bin/java -jar /root/demo-0.0.1-SNAPSHOT.jar
Restart=always
User=root
Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64
Environment=PATH=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[Install]
WantedBy=multi-user.target
- 启动服务
执行以下命令启动服务:
systemctl enable demo.service
systemctl start demo.service
示例二:使用Jenkins自动部署Spring Boot项目
- 安装Jenkins
可以通过以下命令在CentOS7上安装Jenkins:
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install -y jenkins
安装完成后,可以启动Jenkins:
systemctl start jenkins
- 在Jenkins中创建一个新的任务
进入Jenkins界面,点击左侧菜单栏的“新建任务”,创建一个“自由风格的软件项目”。
- 配置Jenkins任务
在任务配置页面中,配置Git代码仓库地址、Jenkins构建触发器、构建步骤等信息。
在构建步骤中添加以下脚本:
mvn clean package
然后将构建好的jar包上传到服务器上:
scp target/demo.jar root@服务器IP:/root
通过以下命令重启Spring Boot服务:
ssh root@服务器IP systemctl restart demo.service
- 执行Jenkins任务
点击“保存”按钮保存任务配置,然后触发Jenkins任务,等待任务执行完成即可。
以上就是从零开始在CentOS7上部署Spring Boot项目的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:从零开始在Centos7上部署SpringBoot项目 - Python技术站