基于Ubuntu服务器部署若依管理系统

本文详细描述了如何在Ubuntu系统上安装MySQL、Redis、openjdk、nodejs、npm、Nginx以及VueCLI,并指导了数据库中间件配置、数据准备、防火墙设置和前端后端项目的启动与测试。还包括了SSL验证问题和npm镜像源更换的解决方案。
摘要由CSDN通过智能技术生成

环境准备

服务器环境为Ubuntu系统

lsb_release -a

image.png

1、安装MySQL数据库

# 1.首先更新本地存储库索引
sudo apt update
# 2.从APT存储库安装MySQL
sudo apt install mysql-server
# 3.安装完成后可通过mysql --version查看版本
mysql --version
# 4.安装完成后MySQL服务自动启动,可以通过下面命令查看MySQL是否在运行中
systemctl status mysql.service

# 5.如果由于某些原因MySQL服务器未运行,执行以下命令以启动MySQL服务器
sudo systemctl start mysql

image.png

2、安装redis

Redis 5.0 和MySQL一样被包含在默认的 Ubuntu 20.04 软件源中。

# 1.从APT存储库安装redis
sudo apt install redis-server
# 2.安装完成后redis服务自动启动,可以通过下面命令查看redis是否在运行中
systemctl status redis.service

image.png

3、安装openjdk

# 1.从APT存储库安装openjdk
sudo apt-get install openjdk-8-jdk
# 2.可以通过下面命令查看openjdk版本
java -version

image.png

4、安装nodejs和npm

# 1.从APT存储库安装nodejs和npm
sudo apt install nodejs npm
# 2.查看nodejs和npm版本
nodejs --version
npm --version

image.png

5、安装nginx

# 1.从APT存储库安装nginx
sudo apt install nginx
# 2.安装完成后nignx服务自动启动,可以通过下面命令查看nignx是否在运行中
sudo systemctl status nginx

6、安装vue-cli

# 安装vue手脚架
sudo cnpm install -g vue-cli

# 查看vue版本
vue -V

系统实施

1、中间件配置

1.1 数据准备

创建online_repair数据库,执行数据库回滚

# 进入MySQL后执行数据库创建语句
create database online_repair;

# 数据库创建完成之后退出MySQL,将sql文件从本地上传至服务器中,执行回滚操作
 mysql -u root -p online_repair < /root/project/online_repair.sql

 # 回滚完成后可进入数据库中查询是否回滚成功

1.2 开启MySQL允许远程访问

1、MySQL配置

# 1.登录mysql
mysql -u root -p

# 2.查看use表
use mysql
select host, user, authentication_string from user;
# 注:在新版数据库中use表中的password字段换成了authentication_string,8.0以前的可以使用select host, user, password from user;

# 3.将用户的访问地址改为%
update user set host = '%' where user = 'root'
# 注:localhost表示只允许本地进行访问,‘%’表示所有用户可以进行访问,也可根据IP进行绑定访问

2、配置文件修改
在Ubuntu系统中,MySQL默认只能本地访问,不能远程访问,因为访问地址被绑定死了为本地127.0.0.1,想要远程访问的话,需要去/etc/mysql/mysql.conf.d中找到bind-address = 127.0.0.1,然后注释掉这一句,也就是在这句前面加上#号。

vi /etc/mysql/mysql.conf.d/mysqld.cnf

image.png
注释掉之后可使用service mysql restart命令对MySQL服务进行重启,然后可在本地navicat测试连接服务器中的MySQL数据库。
image.png

1.3 redis允许远程访问

允许访问的地址,默认是127.0.0.1,会导致只能在本地访问。修改为0.0.0.0则可以在任意IP访问,生产环境不要设置为0.0.0.0

bind 0.0.0.0

守护进程,修改为yes后即可后台运行
daemonize yes

密码,设置后访问Redis必须输入密码,可选,如果设置密码,要在后端配置文件中填写
requirepass 123321

vi /etc/redis/redis.conf

image.png
修改之后可使用service redis restart命令对redis服务进行重启

2、前端项目启动

2.1 打包dist文件夹

进入ruoyi-ui文件夹,并对前端代码进行打包,生成一个dist文件夹

cd ruoyi-ui
npm install --unsafe-perm --registry=https://registry.npm.taobao.org
chmod -R 755 ./*
npm run build:prod

image.png

2.2 配置nginx文件

image.png
image.png

server{
                listen 80;
                server_name {输入服务器的公网IP};

                location / {
                        root /root/project/dist;
                        try_files $uri $uri/ @router; #解决404问题的关键行
                        index index.html index.htm;
                }

                 location @router {
                        rewrite ^.*$ /index.html last;
                }


                location /prod-api/ {
                        proxy_set_header Host $http_host;
                        proxy_set_header X-Real-IP &remote_addr;
                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                        proxy_set_header REMOTE-HOST $remote_addr;
                        proxy_pass http://{输入服务器内网IP}:8080/;
                }
        }

2.3 开放防火墙访问端口

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

# 防火墙开启后需要重启防火墙才能够生效
sudo firewall-cmd --reload

2.4 浏览器测试前端是否启动成功

输入在nginx中配置的IP地址和端口号进行访问,这里我使用的是http协议默认的80端口,所以直接输入http://{ip地址}2e6cce8f957a9669e5e940cd76ae390.png

3、后端项目启动

3.1 修改配置文件信息

在application.yml中,修改redis的信息,分别为host地址(服务器ip),port端口号(redis开放的端口号,一般为6379),password密码(前面配置redis时设置的密码)。
image.png
在application-druid.yml中可进行MySQL数据库配置信息的修改
image.png

3.2 打包上传服务器

在本地ruoyi项目下bin目录下找到package.bat脚本,可一件打包jar包,打包后的jar包在…/RuoYi-Vue-master\ruoyi-admin\target路径下,将jar包上传至服务器中
注:也可使用maven进行package打包操作

3.3 启动jar包

进入jar包所在路径

nohup java -jar ruoyi-admin.jar &

可通过telnet [ip] [prod]是否连通判断后端是否启动成功
若启动失败的可在/home/ruoyi/logs路径下查看失败日志

3.4 停止jar运行

# 查看jar包进程
[root@lgs serviceJarTest]# ps -ef | grep java

可以看到我们启动ruoyi-admin应用的进程号是929736
image.png

# 直接结束进程
kill -9 929736

异常汇总

1、项目执行 npm install 初始化时提示 reason: certificate has expired 错误

证书验证不通过,可以通过替换镜像源或者更换镜像源进行解决

1、取消ssl验证:
 
npm config set strict-ssl false
 
这个方法一般就可以解决了。
 
 
2、更换npm镜像源:
 
npm config set registry http://registry.cnpmjs.org
npm config set registry http://registry.npm.taobao.org
 

2、前端打包出现异常

执行npm run build:prod命令时出现异常
image.png
查看报错日志,权限被拒绝
进入node_modules/.bin/
“ll"查看一下会发现该文件“vue-cli-service” 并没有可执行权限

chmod -R 755 ./*

为路径下应用分配权限后再重新执行,则恢复正常

  • 24
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值