当前位置:   article > 正文

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

jeecg-boot

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

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

本文受众:

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

一、本地环境搭建

1、前端项目环境搭建

1.1、安装node

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

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

在这里插入图片描述

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

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

打开cmd窗口,输入指令:

node -v
npm -v
  • 1
  • 2

在这里插入图片描述

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

# 验证(出现对应版本号即代表安装成功)
pnpm -v
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

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

在这里插入图片描述

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

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

# 安装依赖
pnpm install

# 运行项目
pnpm dev
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

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

以超级管理员打开powershell

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

2、后端项目环境搭建

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

  • 下载JDK8 或者 13

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

  • 本地安装redis

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

本地配置host

# jeecgboot
127.0.0.1   jeecg-boot-mysql
127.0.0.1   jeecg-boot-redis
127.0.0.1   jeecg-boot-system
  • 1
  • 2
  • 3
  • 4
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
  • 1
  • 2
  • 3

打包成功后,会生成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
  • 1

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

docker inspect 容器名
  • 1

在这里插入图片描述

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;
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53

重启一下nginx容器

docker restart nginx-web
  • 1

浏览器访问(如下图所示,前端部署成功):你的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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

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

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

lower_case_table_names=1
  • 1

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

解决1:

apt-get update
apt-get install vim
  • 1
  • 2

解决2:

yum -y install vim
  • 1
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 密码 来认证密码
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
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文件上传至统一目录内
  • 1
  • 2
  • 3
  • 4
  • 5

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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

启动后端项目

docker build -t jeecgboot_docker:1.0 .

docker run -d -p 8080:8080 --name jeecgboot_docker jeecgboot_docker:1.0
  • 1
  • 2
  • 3

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

在这里插入图片描述

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

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/572050
推荐阅读
相关标签
  

闽ICP备14008679号