SpringBoot + Element UI 楠橘星后台管理系统一键打包部署教程文档

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: SpringBoot + Element UI 楠橘星后台管理系统一键打包部署教程文档

JDK8

一、通过xftp进行文件的上传

二、tar zxvf jdk-8u191-linux-x64.tar.gz 解压文件

三、编辑配置文件 vim /etc/profile

export JAVA_HOME=/usr/local/environment/jdk/jdk1.8.0_291
export JRE_HOME=/usr/local/environment/jdk/jdk1.8.0_291/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH

四、重新加载配置文件 source /etc/profile

五、java -version 查看是否成功
在这里插入图片描述

Docker安装

1、配置yum流

首先我们设置yum源
 # 这里我们选择使用阿里云的镜像源(速度比较快)
 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
如果出现 sudo: yum-config-manager: command not found的问题,我们执行如下命令:
# 这个是因为系统默认没有安装这个命令,这个命令在yum-utils 包里
yum -y install yum-utils
出现如下信息则表示设置成功
[root@VM-8-3-centos app]#  sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
添加仓库自:https://download.docker.com/linux/centos/docker-ce.repo

2、查看选择docker版本

# 可以查看所有仓库中所有docker版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r
[root@VM-8-3-centos app]# yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64                3:20.10.9-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.8-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.7-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.6-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.5-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.4-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.3-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.2-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.1-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.12-3.el8                docker-ce-stable
docker-ce.x86_64                3:20.10.11-3.el8                docker-ce-stable
docker-ce.x86_64                3:20.10.10-3.el8                docker-ce-stable
docker-ce.x86_64                3:20.10.0-3.el8                 docker-ce-stable
docker-ce.x86_64                3:19.03.15-3.el8                docker-ce-stable
docker-ce.x86_64                3:19.03.14-3.el8                docker-ce-stable
docker-ce.x86_64                3:19.03.13-3.el8                docker-ce-stable
Docker CE Stable - x86_64                        17 kB/s |  19 kB     00:01    
上次元数据过期检查:0:00:01 前,执行于 2021年12月27日 星期一 21时20分01秒。

3、安装docker

我们这里就安装最新版本的Docker
#不指定版本号,则默认安装最新版本
sudo yum install docker-ce 
已安装:
  container-selinux-2:2.167.0-1.module_el8.5.0+911+f19012f9.noarch                   containerd.io-1.4.12-3.1.el8.x86_64                                        
  docker-ce-3:20.10.12-3.el8.x86_64                                                  docker-ce-cli-1:20.10.12-3.el8.x86_64                                      
  docker-ce-rootless-extras-20.10.12-3.el8.x86_64                                    docker-scan-plugin-0.12.0-3.el8.x86_64                                     
  fuse-common-3.2.1-12.el8.x86_64                                                    fuse-overlayfs-1.7.1-1.module_el8.5.0+890+6b136101.x86_64                  
  fuse3-3.2.1-12.el8.x86_64                                                          fuse3-libs-3.2.1-12.el8.x86_64                                             
  libcgroup-0.41-19.el8.x86_64                                                       libslirp-4.4.0-1.module_el8.5.0+890+6b136101.x86_64                        
  slirp4netns-1.1.8-1.module_el8.5.0+890+6b136101.x86_64                            

完毕!

4、查看docker版本号

# 查看docker版本号
docker version
出现如下信息说明安装成功
[root@VM-8-3-centos app]# docker version
Client: Docker Engine - Community
 Version:           20.10.12
 API version:       1.41
 Go version:        go1.16.12
 Git commit:        e91ed57
 Built:             Mon Dec 13 11:45:22 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

5、加入开启启动

# 启动并加入开机启动
sudo systemctl start docker
sudo systemctl enable docker
出现如下信息说明设置成功
[root@VM-8-3-centos app]# sudo systemctl start docker
[root@VM-8-3-centos app]# sudo systemctl enable docker
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.

6、测试镜像拉取

#  测试拉取Hello-world镜像
docker pull hello-world
docker images 查看镜像列表
[root@VM-8-3-centos app]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    feb5d9fea6a5   3 months ago   13.3kB
Dockerfile
FROM java:8
VOLUME /tmp
ADD blog-springboot-0.0.1.jar blog.jar       
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/blog.jar"] 

Docker安装mysql

拉取Mysql镜像
docker pull mysql 
运行mysql
docker run -d -p 3306:3306 --name myMysql  -e MYSQL_ROOT_PASSWORD=123456 mysql

在这里插入图片描述

Docker安装redis

拉取Redis镜像
docker pull redis
docer run -d -p 6379:6379
docker run -d -p 6379:6379 --name myRedis  redis

使用Docker安装Nginx

1、拉取Nginx镜像

输入命令 docker pull nginx拉取nginx镜像
 #拉取nginx镜像
 docker pull nginx
 #查看镜像列表
 docker images
[root@VM-8-3-centos app]# docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
a2abf6c4d29d: Pull complete 
f3409a9a9e73: Pull complete 
9919a6cbae9c: Pull complete 
fc1ce43285d7: Pull complete 
1f01ab499216: Pull complete 
13cfaf79ff6d: Pull complete 
Digest: sha256:366e9f1ddebdb844044c2fafd13b75271a9f620819370f8971220c2b330a9254
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest
# 查看镜像列表
[root@VM-8-3-centos app]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED      SIZE
nginx        latest    f6987c8d6ed5   6 days ago   141MB

2、启动nginx镜像(暂时启动)

我们直接执行命令 docker run -d -p 80:80 --name nginx nginx,先不进行数据卷的挂载,这是因为nginx的conf目录中的部分文件通过挂载并不会挂载出来,从而导致镜像运行之后直接停止!

出现如下信息表示启动成功
[root@VM-8-3-centos app]# docker run -d -p 80:80 --name nginx nginx
94230b8be4072cd5a66d15992816de37876c8761b450cf5b41ca5acb3c65f797
[root@VM-8-3-centos app]# docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS                               NAMES
94230b8be407   nginx     "/docker-entrypoint.…"   2 minutes ago   Up 2 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp   nginx
接下来我们将容器内部配置文件拷贝出来
 # docker cp 容器名:要拷贝的文件在容器里面的路径       要拷贝到宿主机的相应路径
docker cp 94230b8be407:/etc/nginx/conf.nginx /usr/local/app/nginx/conf/
docker cp 94230b8be407:/etc/nginx/conf.d /usr/local/app/nginx/conf/
在目录下会出现我们拷贝出来的文件
[root@VM-8-3-centos conf]# ls
conf.d  nginx.conf
[root@VM-8-3-centos conf]# pwd
/usr/local/app/nginx/conf

3、启动nginx镜像(目标启动)

我们可以将之前启动的nginx镜像停止删除掉了。

# 停止容器
docker stop 94230b8be407
# 删除容器
docker rm 94230b8be407
# 查看所有容器 (包括没有运行的容器)
出现如下信息删除成功
[root@VM-8-3-centos conf]# docker stop 94230b8be407
94230b8be407
[root@VM-8-3-centos conf]# docker rm 94230b8be407
94230b8be407
[root@VM-8-3-centos conf]# docker ps -a
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

接下来我们进行数据卷的挂载。

我们执行如下命令启动nginx镜像
docker run -d -p 主机端口:容器端口 -v 本地目录:容器目录

docker run -d                          # -d 表示后台运行
-p 80:80 -p 443:443                                      # -p 表示端口映射 其中443端口为https端口配置
--name nginx                                                      # --name 表示容器名称
-v /usr/local/app/nginx/conf/nginx.conf:/etc/nginx/nginx.conf  #-v 表示数据卷挂载。 nginx.conf 配置文件
-v /usr/local/app/nginx/conf/conf.d:/etc/nginx/conf.d                  #conf.d 配置文件
-v /usr/local/app/nginx/html/:/usr/share/nginx/html                      #html   文件目录
-v /usr/local/app/nginx/logs/:/var/log/nginx/                                  #logs   日志信息
-v /usr/local/app/nginx/ssl/:/usr/local/app/nginx/ssl          #ssl    证书存放位置
-v /usr/local/app/upload/:/usr/local/app/upload nginx                  #upload 上传路径
看到如下信息表示启动成功
[root@VM-8-3-centos conf]# docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS                                                                      NAMES
ae78ee20160c   nginx     "/docker-entrypoint.…"   3 seconds ago   Up 2 seconds   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   nginx
基础服务配置
server {
        listen  80;
        server_name  ip地址;

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

        location ^~ /v2/api/ {
            proxy_pass http://ip:端口/;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        }

    }

Dockerfile:

FROM java:8
VOLUME /tmp
ADD blog-springboot-0.0.1.jar blog.jar       
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/blog.jar"] 

nginx基础框架:

server {

        listen  80;
        server_name  ip地址;

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

        location ^~ /v2/api/ {
            proxy_pass http://ip:端口/;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        }

    } 
相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
目录
相关文章
|
5月前
|
安全 Java 持续交付
如何实现上传jar直接部署成功,这篇文章直接带你上手springboot实现jar包热更新!
本文详细讲解了在Spring Boot应用中实现Jar包热更新的实践方法。通过自定义类加载器(`HotClassLoader`),动态加载和卸载指定目录下的Jar包,结合Spring Bean动态注册机制,使新加载的类能够被Spring容器管理。同时,提供了文件上传接口,方便用户手动触发Jar包更新。文章还强调了安全性、依赖管理和线程安全等注意事项,并给出了测试步骤和总结,帮助开发者高效实现热更新功能,减少服务中断和提升开发效率。
|
7月前
|
XML Java 应用服务中间件
SpringBoot-打包&部署
SpringBoot 项目支持两种打包方式:WAR 包和 JAR 包。JAR 包内置 Tomcat,可直接运行;WAR 包需部署在外部 Tomcat 上。JAR 包通过 `mvn clean package` 打包并用 `java -jar` 运行,支持后台运行和 JVM 参数配置。WAR 包需修改 pom.xml 为 war 类型,移除嵌入式 Tomcat 依赖,添加 servlet-api,并继承 `SpringBootServletInitializer`。配置文件可通过外部 application.yml 覆盖,默认优先级高于 JAR 内部配置。
318 17
SpringBoot-打包&部署
|
2月前
|
Web App开发 前端开发 JavaScript
Element UI框架中自定义input组件的placeholder样式。
确保这些样式在你的应用程序CSS文件中定义,且该文件已正确加载到项目中。通过以上方法,可以控制Element UI组件中input的placeholder样式,使其满足特定的设计要求。这些更改都是基于CSS伪元素进行的,因此并不会对DOM结构产生改变,保持了原有结构的简洁和高效。
235 12
|
2月前
|
存储 JavaScript 前端开发
element ui <el-date-picker> 设置展示当前月
在 Element UI 中,使用 `el-date-picker` 的 `value-format` 属性可将日期值格式化为指定字符串。设置 `type=&quot;month&quot;` 时,绑定值默认为 Date 对象,通过 `value-format=&quot;yyyy-MM&quot;` 可将其转为如 &quot;2023-05&quot; 格式,便于存储与处理。
552 0
|
5月前
|
前端开发 Java 物联网
智慧班牌源码,采用Java + Spring Boot后端框架,搭配Vue2前端技术,支持SaaS云部署
智慧班牌系统是一款基于信息化与物联网技术的校园管理工具,集成电子屏显示、人脸识别及数据交互功能,实现班级信息展示、智能考勤与家校互通。系统采用Java + Spring Boot后端框架,搭配Vue2前端技术,支持SaaS云部署与私有化定制。核心功能涵盖信息发布、考勤管理、教务处理及数据分析,助力校园文化建设与教学优化。其综合性和可扩展性有效打破数据孤岛,提升交互体验并降低管理成本,适用于日常教学、考试管理和应急场景,为智慧校园建设提供全面解决方案。
364 70
|
4月前
|
人工智能 安全 程序员
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
|
8月前
|
JavaScript 搜索推荐 Java
基于SpringBoot+Vue实现的家乡特色推荐系统设计与实现(源码+文档+部署)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
|
Java 容器
关于SpringBoot打包问题
这是关于SpringBoot项目中打包时候的类存在BOOT-INF目录下的一系列问题
276 0
关于SpringBoot打包问题
|
4月前
|
JavaScript 前端开发 Java
制造业ERP源码,工厂ERP管理系统,前端框架:Vue,后端框架:SpringBoot
这是一套基于SpringBoot+Vue技术栈开发的ERP企业管理系统,采用Java语言与vscode工具。系统涵盖采购/销售、出入库、生产、品质管理等功能,整合客户与供应商数据,支持在线协同和业务全流程管控。同时提供主数据管理、权限控制、工作流审批、报表自定义及打印、在线报表开发和自定义表单功能,助力企业实现高效自动化管理,并通过UniAPP实现移动端支持,满足多场景应用需求。
353 1
|
5月前
|
前端开发 Java 关系型数据库
基于Java+Springboot+Vue开发的鲜花商城管理系统源码+运行
基于Java+Springboot+Vue开发的鲜花商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的鲜花商城管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。技术学习共同进步
368 7