JeecgBoot单体搭建及部署保姆式教程

JeecgBoot单体搭建及部署保姆式教程

前言: 本文主要是教不想看官方文档或者纯小白如何搭建和部署JeecgBoot单体项目。内容为本地环境搭建,以及如何使用docker、nginx进行部署上线。

本文受众:

  • 相关专业大学生
  • 计算机业余爱好者
  • 用于工作的职场员工

一、本地环境搭建

1、前端项目环境搭建

1.1、安装node

官网:https://www.nodejs.com.cn/

下载Nodejs16以上版本(建议LTS):

在这里插入图片描述

下载完后,双击打开.exe,一路next即可,中途无需进行勾选操作。

问题: 如何确认安装完毕?(如下图,已经安装成功)

打开cmd窗口,输入指令:

node -v
npm -v

在这里插入图片描述

1.2、pnpm安装
# 全局安装pnpm
npm install pnpm -g

# 验证(出现对应版本号即代表安装成功)
pnpm -v

在这里插入图片描述

1.3、拉取前端代码及启动
# 拉取代码
git clone https://gitee.com/jeecg/jeecgboot-vue3.git

在这里插入图片描述

拉取代码后,进入jeecgboot-vue3目录,执行以下指令,即可成功启动前端项目。

#进入jeecgboot-vue3目录
cd jeecgboot-vue3

# 安装依赖
pnpm install

# 运行项目
pnpm dev

你可能会遇到的问题: 无法加载文件C:\Users\AppData\Roaming\npm\pnpm

以超级管理员打开powershell

set-ExecutionPolicy RemoteSigned
#输入如上指令后,提示选择,输入y 回车则可。

2、后端项目环境搭建

以下前提条件需要提前准备好,自行百度。

  • 下载JDK8 或者 13

  • 本地安装mysql5.7及以上版本

  • 本地安装redis

2.1、拉取后端代码及启动
git clone https://gitee.com/jeecg/jeecg-boot.git

本地配置host

# jeecgboot
127.0.0.1   jeecg-boot-mysql
127.0.0.1   jeecg-boot-redis
127.0.0.1   jeecg-boot-system
2.2、修改yml文件

文件入口:

在这里插入图片描述

修改对应的yml文件,修改mysql、redis、账密及其他信息(**备注:**如果是微服务等需要修改更多的信息,mysql和redis必须修改,其余看实际情况)

在这里插入图片描述

在这里插入图片描述

2.3、导入mysql数据库脚本

在这里插入图片描述

按顺序导入数据库脚本,到本地数据库。

2.4、idea启动项目

启动成功如下图:

在这里插入图片描述

浏览器访问:http://localhost:8080/jeecg-boot/

在这里插入图片描述

二、JeecgBoot单体项目部署上线

1、前端项目部署上线

1.1、本地打包编译
# 进入jeecgboot-vue3目录
pnpm install 
pnpm run build

打包成功后,会生成dist文件夹,如下图所示:

在这里插入图片描述

1.2、nginx容器下载及配置(docker)
sudo docker run -d --net="host" --name nginx-web -v /root/nginx/html:/usr/share/nginx/html -v /root/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /root/nginx/logs:/var/log/nginx nginx

担心没有挂载成功的小伙伴可以输入,如下图所示:

docker inspect 容器名

在这里插入图片描述

1.3、上传打包好的前端文件dist目录下的资源文件到定义好的文件夹

(本次操作将dist内的文件资源放入服务器/root/nginx/html文件夹内)

在这里插入图片描述

1.4、修改nginx.conf配置文件

我的配置文件如下图:

user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;

    server {
        #默认端口号
        listen       8082;
        #配置访问ip地址
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;
		#配置访问的页面或者项目名
        location / {
            root   /usr/share/nginx/html;
            index  index.html index.htm;
            #index.html引入的静态资源的路径不正确,刷新页面产生404问题
            try_files $uri $uri/ /index.html;
        }

        location /jeecgboot {
            proxy_pass  http://42.194.200.42:8080/jeecg-boot;
        }
    }
}

重启一下nginx容器

docker restart nginx-web

浏览器访问(如下图所示,前端部署成功):你的IP:8082

在这里插入图片描述

2、后端项目部署上线

2.1、Docker下安装mysql (5.7版本及以上均可)
docker run -id \
-p 3306:3306 \
--name=new_mysql \
-v $PWD/mysql5.7/conf:/etc/mysql/conf.d \
-v $PWD/mysql5.7/logs:/logs \
-v $PWD/mysql5.7/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=xxxxxx \
mysql:5.7

你可能会遇到的问题一,linux下高版本的mysql的表名会区分大小写,所以进入mysql容器,修改容器内my.cnf。

进入mysql容器内/etc/mysql 找到my.cnf,在配置文件内[mysqld]下添加

lower_case_table_names=1

问题二:进入容器后无法修改配置文件,无法使用vim

解决1:

apt-get update
apt-get install vim

解决2:

yum -y install vim
2.2、Docker下安装redis(最新版即可)
docker run -id --name=new_redis \
-p 6379:6379 \
-v $PWD/redis/redis.conf:/etc/redis/redis.conf  \
-v $PWD/redis/data:/data  \
--requirepass yourpassword \
redis:latest


#备注 --requirepass失效时先创建容器后设置密码,操作步骤如下
为现有的redis创建密码或修改密码的方法:
1.进入redis的容器 docker exec -it 容器ID bash
2.进入redis目录 cd /usr/local/bin
3.运行命令:redis-cli
4.查看现有的redis密码:config get requirepass
5.设置redis密码config set requirepass ****(****为你要设置的密码)
6.若出现(error) NOAUTH Authentication required.错误,则使用 auth 密码 来认证密码
2.3、idea打包项目

选择要生效的配置文件Profiles,点击install

在这里插入图片描述

jar生成在target目录:jeecg-boot\jeecg-module-system\jeecg-system-start\target

在这里插入图片描述

2.4、Dockerfile启动后端项目
cd ~
mkdir java-docker
cd java-docker
#将jeecg-system-start-3.6.1.jar上传到自定义目录java-docker
#将配置好的Dockerfile文件上传至统一目录内

Dockerfile文件内容如下:

# 基础镜像使用java
FROM openjdk:13
# 作者
MAINTAINER torlesse
# VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并更名为jeecgboot_docker.jar
ADD jeecg-system-start-3.6.1.jar jeecgboot_docker.jar
# 运行jar包
RUN bash -c 'touch /jeecgboot_docker.jar'
ENTRYPOINT ["java","-jar","/jeecgboot_docker.jar"]
#暴露8080端口作为服务
EXPOSE 8080

启动后端项目

docker build -t jeecgboot_docker:1.0 .

docker run -d -p 8080:8080 --name jeecgboot_docker jeecgboot_docker:1.0

确认后端项目是否启动成功,浏览器访问:你的IP:8080/jeecg-boot 输入账号:jeecg 密码:jeecg1314

在这里插入图片描述

到这里就已经大功告成了,前后端可以进行交互了

在这里插入图片描述

  • 9
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TorlesseLiang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值