从零开始在Centos7上部署SpringBoot项目

从零开始在CentOS7上部署Spring Boot项目,大致分为以下几个步骤:

  1. 安装Java环境

在CentOS7上部署Spring Boot项目,首先需要安装Java环境。可以通过以下命令安装:

yum install java-1.8.0-openjdk-devel

安装完成后,可以通过以下命令查看Java版本:

java -version
  1. 安装Maven

Spring Boot项目的构建工具是Maven,因此需要安装Maven。可以通过以下命令安装:

yum install maven

安装完成后,可以通过以下命令查看Maven版本:

mvn -v
  1. 编写Spring Boot项目代码

在本地编写好Spring Boot项目代码后,可以通过以下命令打包:

mvn clean package

打包完成后,会在target目录下生成一个可执行的jar包。

  1. 将jar包拷贝到服务器上

可以通过以下命令将jar包拷贝到服务器上:

scp target/demo.jar root@服务器IP:/root

其中,demo.jar为打包生成的可执行的jar包,root为服务器用户名,服务器IP为服务器的IP地址,/root为jar包要拷贝到的服务器目录。

  1. 使用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服务器上。

  1. 创建一个Spring Boot项目

使用Spring Initializr创建一个简单的Spring Boot项目。

  1. 编写代码

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>
  1. 打包

在项目根目录下执行以下命令打包:

mvn clean package
  1. 将jar包拷贝到服务器上

使用以下命令将target目录下的demo-0.0.1-SNAPSHOT.jar文件拷贝到服务器上:

scp target/demo-0.0.1-SNAPSHOT.jar root@服务器IP:/root
  1. 设置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
  1. 启动服务

执行以下命令启动服务:

systemctl enable demo.service
systemctl start demo.service

示例二:使用Jenkins自动部署Spring Boot项目

  1. 安装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
  1. 在Jenkins中创建一个新的任务

进入Jenkins界面,点击左侧菜单栏的“新建任务”,创建一个“自由风格的软件项目”。

  1. 配置Jenkins任务

在任务配置页面中,配置Git代码仓库地址、Jenkins构建触发器、构建步骤等信息。

在构建步骤中添加以下脚本:

mvn clean package

然后将构建好的jar包上传到服务器上:

scp target/demo.jar root@服务器IP:/root

通过以下命令重启Spring Boot服务:

ssh root@服务器IP systemctl restart demo.service
  1. 执行Jenkins任务

点击“保存”按钮保存任务配置,然后触发Jenkins任务,等待任务执行完成即可。

以上就是从零开始在CentOS7上部署Spring Boot项目的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:从零开始在Centos7上部署SpringBoot项目 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • java中封装JDBC工具类的实例分析

    我来为你详细讲解“Java中封装JDBC工具类的实例分析”的完整攻略。 什么是JDBC工具类 在Java中使用JDBC技术与数据库进行连接时,需要编写一些重复性较高的代码,如加载驱动、获取连接、关闭连接等。为了避免重复代码的编写,可以将这些代码封装在一个工具类中。这个工具类我们称之为JDBC工具类。 JDBC工具类的编写 加载驱动 在编写JDBC工具类的时候…

    Java 2023年6月16日
    00
  • 为zookeeper配置相应的acl权限

    为ZooKeeper配置ACL权限需要经过以下步骤: 创建一个与管理员相关的ZooKeeper用户 要启动ACL功能,需要至少一个有ACL权限的用户。可以使用addauth命令添加管理员用户,然后再创建其他的用户。下面是添加管理员用户的示例: $ zkCli.sh addauth digest admin:admin123 其中,admin是用户名,admi…

    Java 2023年5月20日
    00
  • 一步步教你整合SSM框架(Spring MVC+Spring+MyBatis)详细教程

    一步步教你整合SSM框架(Spring MVC+Spring+MyBatis)详细教程 什么是SSM框架? SSM框架是Spring MVC + Spring + MyBatis三个框架的组合。它们都是Java企业级应用程序开发中非常流行的框架。Spring MVC框架负责请求处理,Spring框架负责业务逻辑处理和依赖注入,MyBatis框架负责数据库操作…

    Java 2023年5月16日
    00
  • 一个jsp+AJAX评论系统

    下面是一个jsp+AJAX评论系统的完整攻略。 前期准备 在开始创建一个jsp+AJAX评论系统之前,我们需要准备以下几个方面的内容: 后端语言。对于jsp+AJAX评论系统,我们使用的后端语言是Java。 数据库。我们需要使用数据库来存储和获取评论数据。常见的数据库有MySQL和Oracle等。 Web应用程序服务器。我们需要使用Web应用程序服务器来运行…

    Java 2023年6月15日
    00
  • Java 创建线程的3种方法及各自的优点

    下面我将为您详细讲解“Java 创建线程的3种方法及各自的优点”的完整攻略。 Java 创建线程的3种方法及各自的优点 在Java中,创建线程有三种常用的方法,分别为继承Thread类、实现Runnable接口和实现Callable接口。各自的优点如下: 继承Thread类 继承Thread类创建线程是最简单的方法,只需要重写Thread类的run方法即可。…

    Java 2023年5月18日
    00
  • Win10搭建Pyspark2.4.4+Pycharm开发环境的图文教程(亲测)

    下面是Win10搭建Pyspark2.4.4+Pycharm开发环境的图文教程: 环境搭建前准备 在开始搭建Pyspark2.4.4+Pycharm开发环境之前,需要先进行以下几个准备工作: 安装Java:Pyspark需要Java环境,因此需要先安装Java。可以从Oracle官网下载最新版的Java,并按照安装步骤进行安装。 安装Anaconda:Ana…

    Java 2023年5月20日
    00
  • 数组实现Java 自定义Queue队列及应用操作

    数组实现Java 自定义Queue队列及应用操作 队列(Queue)是一种基本数据结构,它在算法和程序设计中得到了广泛应用。队列主要是用来存储和管理一系列元素,并在这些元素中进行插入和删除操作。本篇攻略将详细介绍如何用Java数组来实现自定义队列,并列举相应的应用操作。 Queue定义 队列最基本的功能就是FIFO(先进先出),可在队列尾插入一个元素,也可在…

    Java 2023年5月27日
    00
  • java.lang.NullPointerException 如何处理空指针异常的实现

    处理空指针异常是 Java 应用程序开发中的常见问题。”java.lang.NullPointerException”是一个异常类型,表示代码试图访问一个空对象或者空引用。以下是处理空指针异常的完整攻略: 1. 异常处理 在 Java 中,对于空指针异常,我们可以使用try-catch语句来捕获并处理异常。做法是在 try 块中写入可能会出现异常的代码,而在…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部