好久没有写文章了。今天在centos部署jeecg遇到了些问题,主要还是生疏造成的。记录下,以备后续查阅。对环境部署不是太熟悉的也可以参考。内容不深,共同交流。

目录

一、安装centos操作系统

二、安装软件

1,先说解释下“yum”命令的用法

2,安装 Java JDK

3,安装redis

4,安装mysql

5,安装nginx

三、软件配置

1,redis配置:(密码设置、开机自启动)

2,mysql配置(设置root密码,设置远程连接)

四、部署JEECG


一、安装centos操作系统

        安装步骤网上有的事,在此推荐个链接供大家参考,我是按照此链接安装成功的。

        https://www.runoob.com/w3cnote/vmware-install-centos7.html

        几点说明,注意下:

        1,系统安装之前关于虚拟机的几个配置注意事项:

        网络配置:要选择“桥接模式”。(只要你IP地址不是十分紧张就可以选择此模式,外网访问比较方便。)

        注意启动顺序:优先光盘启动(我是通过iso文件进行安装的)

        2,SOFTWARE SELECTION的选择,选择“Basic Web Server”,这个是没有界面的服务器版

centos部署djnogp项目 centos django部署_linux

 版本的区别大家可自行查阅,我个人不喜欢带界面的linux服务器。

二、安装软件

1,先说解释下“yum”命令的用法

      此文章前面的介绍很简洁易懂,我粘贴了出来。

centos部署djnogp项目 centos django部署_java_02

      大概意思是:

      Redhat、Centos 用命令“yum”

      Debian、Ubuntu 用命令“apt-get” 

      yum、apt-get都是包管理工具

      yum常用命令:yum install <package_name> 安装软件

                               yum remove <package_name> 删除软件

                               yum search <keyword> 搜索软件

                               yum list 可安装软件列表

     下面我们开始软件安装之旅

2,安装 Java JDK

      yum search jdk                                                             //查看资源包里有哪些可安装的Java版本

      yum install java-1.8.0-openjdk-devel.x86_64              //选择版本开始安装

      java -version                                                                //查看是否安装成功

     

centos部署djnogp项目 centos django部署_linux_03

     安装成功

3,安装redis

      直接安装yum install redis会提示没有此安装包,需要先下载fedora的epel仓库

下载fedora的epel仓库

      yum install redis                          //再执行安装命令即可安装成功了

      service redis start                       //启动redis命令

      

centos部署djnogp项目 centos django部署_java_04

      这里大家要注意及有可能提示“Rdirecting /bin/systemctl start redis.service”,意思是让你用/bin/systemctl start redis.service 启动,而不是service redis start。你就安装提示执行下此命令

      /bin/systemctl start redis.service      //启动成功

      说明下原因:systemctl是service的升级版,centos7之后都用systemctl来替代了。也有一个说法是:systemctl=service+chkconfig。没验证过,不知道。不管他了,在centos7之后版本用 /bin/systemctl启动服务就对了。

      service redis status                        //查看状态,(看redis是否正常启动了)

centos部署djnogp项目 centos django部署_centos部署djnogp项目_05

      注意红色框,系统仍然建议你使用 systemctl 命令去执行,但是service命令也能使用。所有我估计上面那个service redis start已经启动成功了,当时没看状态。直接就执行了systemctl。

4,安装mysql

        wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm    //下载安装包

        yum -y install mysql57-community-release-el7-10.noarch.rpm  //安装

        yum -y install mysql-community-server  //安装MySQL

        systemctl start  mysqld.service //启动Mysql

        systemctl status mysqld.service //查看MySQL运行状态

centos部署djnogp项目 centos django部署_centos部署djnogp项目_06


5,安装nginx

        yum install -y nginx                       //安装nginx

        whereis nginx                                //查看安装路径

centos部署djnogp项目 centos django部署_java_07

       注:类似whereis命令还有:grep、find、which。具体区别与使用我也不是很清楚。大家自行百度吧。

三、软件配置

1,redis配置:(密码设置、开机自启动)

密码设置

      

centos部署djnogp项目 centos django部署_java_08

      redis-cli                   //进入redis客户端

      config get requirepass                //没设置过密码会显示:”“

      config set requirepass 123456    //设置redis密码为123456 

      auth 123456                                //返回"ok",证明密码修改成功

      但是,这样修改密码重启redis服务后,密码仍然会回到初始状态。也就是说这样修改密码只是当时有效,重启后失效。切记!!!!要下永久有效,请往下看,嘿嘿:

      

centos部署djnogp项目 centos django部署_java_09

 

centos部署djnogp项目 centos django部署_centos部署djnogp项目_10

      找到redis配置文件,我的是在/etc/redis.conf这里,修改文件。加入配置:requirepass 123456

      保存退出后(vim 保存退出命令 :wq)就永久生效了。

centos部署djnogp项目 centos django部署_java_11

        大家可以看到重启服务后,redis密码仍然是123456

开机自启动

        网当时百度的时候网上说的哪个复杂啊,修改配置文件,把一段脚本粘进去然后再怎么怎么样的,最后也没成功。

systemctl enable redis

        你会发现在/etc/systemd/system/multi-user.target.wants/目录下新建一个/usr/lib/systemd/system/redis.service 文件的链接。也就是说/etc/systemd/system/multi-user.target.wants/目录下都是开机自启动的服务。简单不,哈哈。以后装服务都可以按此方法设置自启动,这就跟windows下设置一样方便了。


centos部署djnogp项目 centos django部署_linux_12

         以上截图是此文章的重点!

2,mysql配置(设置root密码,设置远程连接)

       设置root密码

  

centos部署djnogp项目 centos django部署_java_13

centos部署djnogp项目 centos django部署_linux_14

       这个是我做的验证,完全一致,大家可以参照此文章配置,我就不在描述了。

        但是此时你用navicat远程连接还是连接不上,需要继续修改:

       

centos部署djnogp项目 centos django部署_java_15

        执行"grant all on *.* to root@'%' identified by '数据库密码';"后就会在user表里增加一行数据,其中Host为"%",这样就可以访问了。

        到此可能还有部分用户远程访问失败,此时可以用telnet试下3306的端口通不通。

        telnet IP地址 3306

        此时应该是不通的,这就要关闭服务器防火墙了,具体操作如下:

        systemctl status firewalld.service      //查看防火墙是否开启

        systemctl stop firewalld.service        //关闭防火墙

        stop命令在服务器重启后防火墙仍会启动。永久关闭应该这样:

        systemctl disable firewalld.service   //禁止防火墙服务器

        到此Mysql远程就应该能连接上了

centos部署djnogp项目 centos django部署_java_16

        注:如果用云服务器(如阿里云)还要在其配置界面里打开端口3306的访问权限。

四、部署JEECG

大家完全可以参照jeecgBoot开发文档的介绍进行部署了。链接:http://doc.jeecg.com/2043886

这里要说明下,按照官方部署方案说是要加上部署插件

<build>
  <plugins>
  <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
  </plugin>
 </plugins>
</build>

但是,我加上后反而报错:

Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.3.5.RELEASE:repackage (repackage) on project jeecg-boot-base-tools: Execution repackage of goal org.springframework.boot:spring-boot-maven-plugin:2.3.5.RELEASE:repackage failed: Unable to find main clas

后台去掉此插件,反而打包成功了。