欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 手游 > CentOS 7 部署RuoYi 项目

CentOS 7 部署RuoYi 项目

2025/4/1 3:50:26 来源:https://blog.csdn.net/2302_79341710/article/details/146369753  浏览:    关键词:CentOS 7 部署RuoYi 项目

换源

 备份现有的 YUM 源配置文件

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

 默认的 CentOS 官方镜像源替换为阿里云的镜像源,以提高下载速度和稳定性。

 curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

上传文件压缩包

查看文件

安装MySQL

 安装MYSQL5.7.30 

   1.官网下载MySQL5.7.30的RPM安装包

   2.卸载CentOS7系统自带的mariadb

     #先检查有没有安装mariadb 
     rpm -qa|grep mariadb

     #我有个mariadb-libs-5.5.56-2.el7.x86_64,把它给卸载了 
     #mariadb-libs-5.5.56-2.el7.x86_64
     rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

     #再次查看,mariadb已删除
     rpm -qa|grep mariadb

   3.安装libaio、perl、net-tools库,要不就会报错 balabala... 

        yum -y install libaio perl net-tools

   4.rz上传安装包到/usr/local/mytools

   5.建个目录并将安装文件解压到此目录

     mkdir /usr/local/mysql-5.7.30
     cd /usr/local/mytools 
     tar -xvf mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar -C /usr/local/mysql-5.7.30

   6.进入目录准备安装

 cd /usr/local/mysql-5.7.30

  #开始安装,-ivh 其中i表示安装,v表示显示安装过程,
     rpm -ivh mysql-community-common-5.7.30-1.el7.x86_64.rpm
     rpm -ivh mysql-community-libs-5.7.30-1.el7.x86_64.rpm
     rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm
     rpm -ivh mysql-community-server-5.7.30-1.el7.x86_64.rpm


   
   7.启动mysqld服务

启动MySQL服务
     systemctl start mysqld

     注1:安装完成后的服务名叫mysqld
          systemctl start mysqld

查看MySQL服务状态
          systemctl status mysqld



   8.登录mysql修改密码


     #查询生成的临时密码
     grep "password" /var/log/mysqld.log

OBqtWHKz8p-!


   #登录mysql
     mysql -u root -p  

这里登录使用初始化密码,避免复制到空格
     #因为是本地测试环境,所以想把密码改的简单点
     #查看mysql初始的密码策略:
     SHOW VARIABLES LIKE 'validate_password%';

     #设置密码校验策略(0 or LOW),要不密码太LOW不让你过
     set global validate_password_policy=0;

     #设置密码校验长度,要不密码太短不让你过(多次测试发现密码最小长度为4位)
     set global validate_password_length=4;

     #更新密码
     set password = password("1234");

     #输入后使修改生效还需要下面的语句
     FLUSH PRIVILEGES;

     #可以退出,试试用新密码重新登录
     exit

9.修改mysql的字符集为utf8

依次往下操作就行
     #登陆mysql之后,可以通过如下命令查看mysql的字符集
     show variables like 'chara%';

退出MySQL
     quit;

     #以下命令为linux命令
     #修改配置文件设置 MySQL 字符集为 UTF-8
     vi /etc/my.cnf
     
     [mysqld]
     #在mysqld最下面加入二行代码
     character-set-server=utf8 
     collation-server=utf8_general_ci
     
     #client为自己添加
     [client]  
     default-character-set=utf8

   10.Centos7下无法远程连接mysql数据库


      show databases; 显示所有数据库
      use mysql;打开mysql数据库
      show tables; 显示当前数据库中的所有数据表
      select user,host from user; 查询user表,得到所有用户信息
     1.数据库没有授权,允许以root身份远程登录mysql
       GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '1234' WITH GRANT OPTION;
       #WITH GRANT OPTION;给其它用户授权的权限
       #输入后使修改生效还需要下面的语句
       FLUSH PRIVILEGES;

Navicat 连接MySQL登录用户需要用到


     2.服务器防火墙没有开放3306端口 
     方式一:开放端口
       firewall-cmd --zone=public --add-port=3306/tcp --permanent
       firewall-cmd --reload
       firewall-cmd --list-port
       firewall-cmd --query-port=3306/tcp

     方式二:关闭防火墙

       systemctl stop firewalld

       systemctl disable firewalld

测试本机登录连接MySQL      

2. mysql数据库数据导出/导入 RuoYi 数据
   Navicat导出表结构及少量数据

        新建一个ry_vue 库 导入 quart.sql 和 ry20220822.sql 运行

右键新建一个ry_vue库

右键运行sql文件, 打开sql 文件开始运行 RuoYi-Vue-v3.8.5\sql


3. mysql-linux目录结构
    /etc/my.cnf  配置文件

    /usr/sbin/mysqld   服务端
    /usr/bin/mysql      客户端
 
    /var/lib/mysql   数据库存放位置
    /var/log/mysqld.log 日志文件

   /usr/lib/systemd/system/mysqld.service  服务文件
 

安装redis

安装gcc依赖

由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行以下命令进行安装

gcc -v 测试是否安装

yum install -y gcc  安装gcc 

下载并解压安装包

#下载
wget http://download.redis.io/releases/redis-5.0.3.tar.gz
我已经上传过,没有下载直接下载
`#解压`
tar -zxvf redis-5.0.3.tar.gz

编译

解压完成后会生成一个 redis-5.0.3 文件

进入目录

cd redis-5.0.3
进行编译
make

安装并指定安装目录

#方法一:安装指定目录(安装完成后会在目录下面生成一个bin目录)`
#make install PREFIX=/usr/local/redis
#方法二:默认安装到/usr/local/bin
redis-5.0.0>make install

启动服务

前台启动

#指定目录安装执行
cd /usr/local/redis/bin/
启动服务
./redis-server


#默认目录安装执行
redis-server /usr/local/bin/redis.conf

后台启动

从 root/目录下 redis-5.0.3 的源码目录中 redis.conf 到 复制redis 的安装目录

cp /usr/local/redis-5.0.3/redis.conf  /usr/local/redis/bin/

修改 redis.conf 文件,把 daemonize no 改为 daemonize yes

vi redis.conf

“/”加关键词就可以搜索   将其改为 yes

后台启动

启动 Redis 服务器

./redis-server redis.conf

​检查网络连接
netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      5963/./redis-server
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1013/sshd
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1187/master
tcp6       0      0 :::3306                 :::*                    LISTEN      1499/mysqld
tcp6       0      0 :::22                   :::*                    LISTEN      1013/sshd
tcp6       0      0 ::1:25                  :::*                    LISTEN      1187/master

关闭某个进程
kill -9 5963

查找 Redis 进程

ps -ef | grep redis

使用密码

修改redis.conf文件,将requirepass前的#去掉,并修改密码

日志文件

  • 如果不修改logfile配置,默认不产生配置文件

  • 如果不另外修改dir配置,默认在当前目录

logfile "redis.log"

充许远程连接

默认只充许本机连接,将bind 127.0.0.1改为0.0.0.0

开放对应的端口

客户端连接

redis-cli连接

redis-cli [-h <host>] [-p <port>] [-a <password>]
host:redis服务器host 
port:redis服务端口 默认端口6379
password:redis服务密码(无密码不需要-a参数了)
#默认连接
redis-cli
#如果使用了密码连接,可以连接之后再验证密码
auth <password>

连接失败,可能原因服器没有启动

设置开机启动

添加开机启动服务

[root@localhost bin]# vi /etc/systemd/system/redis.service

复制粘贴以下内容:

[Unit]
Description=redis-server
After=network.target
​
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/bin/redis.conf
PrivateTmp=true
​
[Install]
WantedBy=multi-user.target

注意:ExecStart配置成自己的路径

设置开机启动

[root@localhost bin]# systemctl daemon-reload

[root@localhost bin]# systemctl start redis.service

[root@localhost bin]# systemctl enable redis.service

创建 redis 命令软链接

[root@localhost ~]# ln -s /usr/local/redis/bin/redis-cli /usr/bin/redis

测试 redis

服务操作命令

systemctl start redis.service #启动redis服务

systemctl stop redis.service #停止redis服务

systemctl restart redis.service #重新启动服务

systemctl status redis.service #查看服务当前状态

systemctl enable redis.service #设置开机自启动

systemctl disable redis.service #停止开机自启动

安装jdk

    linux中JDK的安装与配置
    https://www.oracle.com/java/technologies/downloads/
     jdk-8u391-linux-x64.rpm   RPM安装
     jdk-8u391-linux-x64.tar.gz  解压


   1.解压JDK压缩包

     cd /usr/local/mytools
     tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local      解压到指定文件夹
                                                                             
     注1:在解压的时候 -C 是解压到指定目录中,一定要加-C参数,而且区分大小写的,-_-         555555555555555,“很痛的很痛的很痛的领悟”
     注2:&&可将多条命令合成一行
          cd /usr/local/mytools && tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local

   2.配置JDK环境变量


     vim /etc/profile
     #打开配置文件并在文件的最后添加如下内容(注意:=两边没有空格)
     #java environment
     export JAVA_HOME=请修改JDK解压路径
     export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
     export PATH=$PATH:${JAVA_HOME}/bin

   

3.设置环境变量生效
     source /etc/profile

4.查看环境变量是否配置成功
     java -version
     

安装tomcat

. tomcat安装与配置
  https://tomcat.apache.org/
   Core:
     zip (pgp, sha512)   windows解压版
    tar.gz (pgp, sha512)   linux解压版 
     32-bit Windows zip (pgp, sha512)
    64-bit Windows zip (pgp, sha512) windows解压版
   32-bit/64-bit Windows Service Installer (pgp, sha512) windows安装版

   1.解压tomcat到指定路径


     tar -zxvf apache-tomcat-8.5.20.tar.gz -C /usr/local 

   2.解压完成后进入tomcat的bin目录


     cd /usr/local/apache-tomcat-8.5.20/bin

   3.启动或关闭tomcat


     cd /usr/local/apache-tomcat-8.5.20/bin
     ./startup.sh
     ./shutdown.sh

  4.tomcat自启动


    cd /usr/lib/systemd/system
    vi tomcat.service

#自己手动创建tomcat.service 文件输入以下类容

[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
Environment='JAVA_HOME=/usr/local/jdk1.8.0_151'
Environment='CATALINA_PID=/usr/local/apache-tomcat-8.5.20/tomcat.pid'
Environment='CATALINA_HOME=/usr/local/apache-tomcat-8.5.20/'
Environment='CATALINA_BASE=/usr/local/apache-tomcat-8.5.20/'
#Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'

PIDFile=/usr/local/apache-tomcat-8.5.20/tomcat.pid
ExecStart=/usr/local/apache-tomcat-8.5.20/bin/catalina.sh start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target


    将资料中的tomcat.service中的内容复制进来,并修改tomcat和jdk的路径(重要!重要!重要!)
   tomcat.*
    systemctl daemon-reload
     systemctl status tomcat 
    netstat -ntlp
    systemctl enable tomcat 

// 不执行
    systemctl stop tomcat 
  curl http://localhost:8080 本地访问


    systemclt start/status/stop/restart tomcat

    #配置防火墙 远程访问
    firewall-cmd --zone=public --add-port=8080/tcp --permanent
    firewall-cmd --reload  

后台部署

修改 ruoyi-admin/WEB-INF/classes/application-druid.yml

   # 主库数据源            

master:                

url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8                

username: root                

password: password 

把ruoyi-admin文件上传到/usr/local/apache-tomcat-8.5.20/webapps/目录下

后台测试 IP:8080:/ruoyi-admin/

注意:如果没有没有出现请查看tomcat日志

/usr/local/apache-tomcat-8.5.20/logs/catalina.2025-03-20.log

catalina.out   

我是密码出错了

安装nginx

  1.  编写/etc/yum.repos.d/nginx.repo文件

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

清空原来的缓存
yum clean all
重新把仓库信息缓存在本地
yum makecache

显示所有的yum源

yum repolist

搜索nginx
yum search nginx 

安装nginx

yum install -y nginx

查询已安装软件包

rpm -qa | grep nginx

出现nginx 相关文件

rpm -ql nginx 

nginx 配置文件

/etc/nginx/nginx.conf

nginx 服务

/usr/lib/systemd/system/nginx.service

nginx 项目发布位置

/usr/share/nginx/html

查看nginx 是否装好

看状态

systemctl status nginx
自启

systemctl enable nginx

启动服务

systemctl start nginx

查看网络状态

netstat -ntlp

[root@localhost ~]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:6379            0.0.0.0:*               LISTEN      17097/redis-server
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      18790/nginx: master
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1013/sshd
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1187/master
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      18172/java
tcp6       0      0 :::8009                 :::*                    LISTEN      18172/java
tcp6       0      0 :::3306                 :::*                    LISTEN      1499/mysqld
tcp6       0      0 :::8080                 :::*                    LISTEN      18172/java
tcp6       0      0 :::22                   :::*                    LISTEN      1013/sshd
tcp6       0      0 ::1:25   

测试本地服务

curl http://localhost (端口号可以不加,http端口号默认80)

可以看到nginx 欢迎界面

[root@localhost ~]# curl http://localhost
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p><p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p><p><em>Thank you for using nginx.</em></p>
</body>
</html>

测试远程访问

firewall-cmd --zone=public --add-port=80/tcp --permanent
即开放TCP协议的80端口

firewall-cmd --reload
确保新的配置立即生效

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

80端口是否已经被开放

浏览器进行访问nginx   如: x.x.x.x

注:

/usr/sbin/nginx :启动nginx

/usr/lib/systemd/system/nginx.service: nginx 服务

/etc/nginx :配置目录 /etc/nginx/nginx.conf 配置文件

/usr/share/nginx/html: 部署目录

/var/log/nginx: 日志

前台部署

cd /usr/share/nginx/html 

到nginx默认部署目录

rm -rf  *

删除html 目录下的文件

上传前台dist 文件到html 目录下

配置nginx congf文件 /etc/nginx/nginx.conf

mv nginx.conf nginx.conf.bak 备份 nginx.conf 文件,

自己编写下面类容命名为 nginx.conf,上传到 nginx.conf 目录下

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;
                charset utf-8;

//静态资源

                location / {
            root   /usr/share/nginx/html;
                        try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }

//动态资源

                location /prod-api/ {
                        proxy_set_header Host $http_host;
                        proxy_set_header X-Real-IP $remote_addr;
                        proxy_set_header REMOTE-HOST $remote_addr;
                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                        proxy_pass http://localhost:8080/;
                }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

systemctl restart nginx

到 /etc/selinux 

的config 中的 SELINUX=disabled 改为关闭

 setenforce 0
getenforce         临时关闭

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词