几分钟完成前后端分离项目部署

2024-01-29 05:12

本文主要是介绍几分钟完成前后端分离项目部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文章主要讲如何手动部署前后端分离项目,分前端部署后端部署,部署所用项目获取:关注公众号发送:
cloud

前言

基于本项目的所需的环境

  • 前端
    • node:v16.14.2
    • pnpm:8.6.9
  • 后端
    • jdk:17
    • maven:Apache Maven 3.8.1
    • mysql:8.0.28
    • nacos:2.1.1
  • 服务器:2核4G(最好)
    • nginx:1.20.2
    • docker:24.0.7

前端部署

1. 新建目录

用于存放项目 build 后的资源

cd /
mkdir www
cd /www
mkdir html
2. 项目构建
  • 执行 pnpm run build

在这里插入图片描述

  • 将生成的 dist 目录上传到刚才创建的 /www/html/

    在这里插入图片描述

3. 安装 nginx
  • 安装:Nginx安装

  • 修改配置:vim /usr/local/nginx/conf/nginx.conf

    在这里插入图片描述

  • 访问 ip:80 验证

后端部署

1. Package
  • 子项目的 pom 文件添加打包插件

    <build><finalName>打包后的jar包名</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins>
    </build>
    
  • 在项目目录下执行:mvn cleanmvn package

    在这里插入图片描述

  • target目录下的jar包上传至服务器
    在这里插入图片描述
    在这里插入图片描述

    使用 rz 命令上传到服务器上(最好分别建立文件夹存放单独的jar包,便于后面打包生成镜像)

2. 制作基础镜像

因为运行 jar 包需要 jdk 环境,项目使用的是 jdk17,因此需要据此制作一个含有 jdk17 的基础镜像,选用 ubuntu 为基础来进行制作

安装docker

  • 拉取 ubuntu 镜像:docker pull ubuntu

  • 新建一个 jdk 目录,将 jdk17的安装包copy到目录下

  • 新建 Dockerfile 文件:vim Dockerfile

    FROM ubuntu
    MAINTAINER zeroclian
    RUN mkdir /usr/local/jdk
    WORKDIR /usr/local/jdk
    ADD jdk-17_linux-x64_bin.tar.gz /usr/local/jdkENV JAVA_HOME /usr/local/jdk/jdk-17.0.5
    ENV CLASSPATH $JAVA_HOME/lib/
    ENV PATH $JAVA_HOME/bin:$PATH
    

    在这里插入图片描述

  • 在 Dockerfile 文件所在目录执行:docker build -t jdk17 .

    将会生成了一个名为 jdk17 的镜像,使用 docker images 查看

3. 制作服务镜像
  • 同样的方式,在上传的cloud-service.jar所在目录下新建 Dockerfile 文件,执行:docker build -t cloud-service .

    FROM jdk17
    ADD cloud-service.jar /cloud-service.jar
    ENTRYPOINT ["java","-jar","/cloud-service.jar"]
    

    最后我们会得到三个镜像:

    在这里插入图片描述

4. 启动容器
  • 启动容器,开放端口号

    docker run -di --name=cloud-gateway -p 9999:9999 cloud-gateway
    docker run -di --name=cloud-service -p 8001:8001 cloud-service
    

    在这里插入图片描述

  • 验证是否成功

    在这里插入图片描述

❗️注意事项❗️

  • 无法访问时,请检查服务器的安全组是否放开相关端口
  • cloud-nacos不在需要理会,直接nacos安装即可,不需要使用容器启动
  • 若启动后很快容器就停止了,可能是服务器内存不足,可以自行调整容器
  • jdk17安装包获取:公众号发送jdk17

这篇关于几分钟完成前后端分离项目部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/655821

相关文章

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

在IntelliJ IDEA中高效运行与调试Spring Boot项目的实战步骤

《在IntelliJIDEA中高效运行与调试SpringBoot项目的实战步骤》本章详解SpringBoot项目导入IntelliJIDEA的流程,教授运行与调试技巧,包括断点设置与变量查看,奠定... 目录引言:为良驹配上好鞍一、为何选择IntelliJ IDEA?二、实战:导入并运行你的第一个项目步骤1

在MySQL中实现冷热数据分离的方法及使用场景底层原理解析

《在MySQL中实现冷热数据分离的方法及使用场景底层原理解析》MySQL冷热数据分离通过分表/分区策略、数据归档和索引优化,将频繁访问的热数据与冷数据分开存储,提升查询效率并降低存储成本,适用于高并发... 目录实现冷热数据分离1. 分表策略2. 使用分区表3. 数据归档与迁移在mysql中实现冷热数据分

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5

IntelliJ IDEA2025创建SpringBoot项目的实现步骤

《IntelliJIDEA2025创建SpringBoot项目的实现步骤》本文主要介绍了IntelliJIDEA2025创建SpringBoot项目的实现步骤,文中通过示例代码介绍的非常详细,对大家... 目录一、创建 Spring Boot 项目1. 新建项目2. 基础配置3. 选择依赖4. 生成项目5.

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

如何在Spring Boot项目中集成MQTT协议

《如何在SpringBoot项目中集成MQTT协议》本文介绍在SpringBoot中集成MQTT的步骤,包括安装Broker、添加EclipsePaho依赖、配置连接参数、实现消息发布订阅、测试接口... 目录1. 准备工作2. 引入依赖3. 配置MQTT连接4. 创建MQTT配置类5. 实现消息发布与订阅