前言:安装CentOS后必看

  • 首先是网络设置问题,要让虚拟机中的CentOS联网,有很多种网络连接方式。不同连接方式在这不具体描述,建议选择桥接模式(这样CentOS会被分配一个独立的局域网ip),并且在CentOS中要设置配置文件来进行联网

    第一步

    然后以root用户登录,输入以下命令

    1
    vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

    按下i进行编辑(参照vim编辑器的操作),将ONBOOT参数设置为yes,如下所示

    1
    ONBOOT=yes

    按下ESC键退出insert模式,然后输入:wq并回车,即可保存文件并退出

    此时重启网络服务

    1
    service network restart

    随后ping本机ip进行测试,若能连通说明设置成功

一.CentOS服务器的基本命令与操作

  • 清屏:clear / reset

  • 查看本地IP信息

    1
    2
    3
    4
    ifconfig:旧命令,net-tools中的命令
    安装命令:yum install net-tools

    ip addr:新命令,iproute2中的命令
  • 查看公网IP信息

    1
    2
    curl cip.cc
    curl ifconfig.me
  • 更改yum安装镜像仓库

    1、首先备份系统自带yum源配置文件/etc/yum.repos.d/CentOS-Base.repo

    1
    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup`

    2、下载ailiyun的yum源配置文件到/etc/yum.repos.d/

    1
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

    3、运行yum makecache生成缓存

    1
    yum makecache

    4、这时候再更新系统就会看到以下mirrors.aliyun.com信息

    1
    yum -y update

二.CentOS安装JDK

  • 首先通过SSH工具连接到服务器,推荐SecureCRT

  • 检查jdk是否安装

    1
    java -version
  • 若安装了openjdk,搜索

    1
    rpm -qa|grep openjdk -i
  • 需卸载openjdk

    1
    rpm -e --nodeps 需要删除的软件
  • 新建jdk安装目录

    1
    mkdir /usr/java
  • 推荐使用FileZilla软件上传jdk文件

    1
    2
    解压
    tar -zxvf jdk-8u191-linux-x64.tar.gz
  • 将jdk文件夹放在/usr/java目录下

    1
    mv jdk1.8.0_191/ /usr/java/
  • 配置环境变量

    1
    2
    3
    4
    5
    6
    vim /etc/profile
    注意:若没有vim编辑器先安装

    export JAVA_HOME=/usr/java/jdk1.8.0_241
    export CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar
    export PATH=$PATH:$JAVA_HOME/bin
  • 刷新profile,使其生效

    1
    source /etc/profile
  • 到这里,再次检查jdk版本,安装完成

三.安装Tomcat并部署

  • 下载tomcat包放到/home/software目录下

  • 解压后将文件夹移动到/usr/local/目录下

  • 启动Tomcat(切换到tomcat目录)

    1
    2
    cd bin
    ./startup.sh
  • 虚拟机:若无法通过内网访问8080端口,需要手动打开

    1
    2
    3
    4
    5
    6
    7
    8
    9
    查看tomcat是否启动成功 ps -ef|grep tomcat

    firewall-cmd --permanent --zone=public --add-port=8080/tcp

    firewall-cmd --reload

    firewall-cmd --zone=public --query-port=8080/tcp

    最后重启Tomcat即可
  • 云服务器:设置安全组并开放指定端口(以8080为例)

  • 配置第二个Tomcat

    1
    2
    3
    4
    cd conf/
    vim server.xml
    注意要修改三个端口号:访问端口,关闭端口,重定向端口
    并开放相关的端口,确保可以连接
  • 连接主机下配置好的端口,出现apache tomcat默认页面则完成配置

四.MariaDB的安装与配置

  • MariaDB开源,且兼容MySQL,建议用MariaDB替换MySQL

  • 第一步:打开

    https://downloads.mariadb.org/ 并下载对应版本(rpms文件夹)

  • 第二步:参考安装文档 点击这里(以CentOS7为例)

  • 注意下全包(CentOS对应下载了7个包),根据官方文档一步步安装即可

  • 第三步:运行MariaDB

    1
    2
    3
    # yum install mariadb-server -y //如果已安装可以省略
    # systemctl start mariadb.service //启动服务
    # systemctl enable mariadb.service //开机启动服务
  • 第四步:安全配置

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #	mysql_secure_installation

    1.输入当前密码,初次安装后没有密码,可直接回车
    2.询问是否使用`unix_socket`进行身份验证:n
    3.为root设置新密码:y
    4.输入root新密码
    5.再次输入root新密码
    6.是否移除匿名用户,建议删除:y
    7.拒绝用户远程登录,建议不拒绝:n
    8.删除test库,建议保留:y
    9.重新加载权限表:y
  • 第五步:权限配置(打开远程访问数据库权限)

    1
    2
    3
    # mysql -u root -p
    # grant all privileges on *.* to '用户名'@'%' identified by '密码';
    # flush privileges;
  • 到这里为止,就可以通过远程客户端连接数据库了

五.SpringBoot多环境部署

  • 开发环境 -dev

  • 测试环境 -test

  • 生产环境 -prod

  • profile提供多环境支持

    1
    2
    3
    application.yml -> 主配置文件
    application-{name}.yml -> 环境配置(挂件)
    激活多环境 -> spring.profiles.active:{name}

六.打包并发布

  • 在pom.xml中指定打包方式,默认为jar包

    1
    <packaging>war</packaging>
  • 随后show dependencies ,crtl+F查找以下依赖

    1
    tomcat-embed-el
  • 随后点击以下依赖,右键->Exclude,移除自带Tomcat

    1
    spring-boot-starter-tomcat
  • 然后添加以下依赖

    1
    2
    3
    4
    5
    6
    <!--添加依赖-->
    <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <scope>provided</scope>
    </dependency>
  • 写SpringBoot启动类

    1
    2
    3
    4
    5
    6
    7
    8
    //打包war 增加war包启动类
    public class WarStarterCatalinaApplication extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    //指向Application的SpringBoot启动类
    return builder.sources(CatalinaApplication.class);
    }
    }
  • 右侧Maven模块

    1
    clean -> install
  • 随后war包会生成在项目文件夹/target/ 目录下,将war包上传至服务器Tomcat/webapps下,会自动解压war包,若没有自动解压需检查Tomcat服务是否启动。


以上就是将简单的SpringBoot项目发布到Linux的方法,若使用了更多的服务与组件(如redis),同样需要在Linux中配置环境,具体的配置方法可以参考百度/google。