金蝶部署SpringBoot+vue项目总结

2023-05-16

金蝶部署SpringBoot+vue项目文章目录

文章目录

  • 金蝶部署SpringBoot+vue项目文章目录
  • 前言
  • 一、金蝶部署中两个重要概念
    • 1. 域
    • 2. 应用基础上下文
  • 二、部署准备
    • 1. 前后台打包
    • 2. 部署过程
    • 3. 部署成功后的注意事项
  • 三、总结
    • 1. 遇到的问题
    • 2. 总结


前言

随着我国产品的国产化发展,很多政府项目都需要进行国产化,项目部署也是如此,那在国产中间件的部署中,金蝶中间件是排在靠前名次中的。如何实现maven+vue项目的部署呢?本文就描述了金蝶部署的详细过程


一、金蝶部署中两个重要概念

1. 域

金蝶部署过程中,将domains下的文件夹叫做域,一个域代表一个端口号(访问时系统时使用的端口号),一个域只能配置一个端口号,如图所示三个文件夹代表可以配置三个端口。但是在一个域下是可以部署多个系统的,只需要上下文不同即可。
在这里插入图片描述

2. 应用基础上下文

应用基础上下文用于配置全局的访问路径。
在这里插入图片描述

二、部署准备

1. 前后台打包

1、后台包
修改pom文件为war——>package
在这里插入图片描述
打包后的效果如图,会产生两种打包文件,一种是文件夹形式,一种是.war的形式,金蝶容器支持两种方式的部署。本文使用.war包。
在这里插入图片描述

2、前台包
运行npm run build,打出的vue项目包如下所示。
在这里插入图片描述

此时需要我们手动的新建一个WEB-INF文件夹,并在文件夹中放入web.xml文件。此文件是为了解决项目部署后刷新页面出现404的错误。
在这里插入图片描述

2. 部署过程

1、放置部署包
我们进入生产环境,将部署包放到金蝶的域目录下,路径为“/opt/AAS/domains/mydomain/applications”。
在这里插入图片描述
2、配置域端口
将域端口配成需要访问的端口,找到域文件夹下的端口配置文件,路径如“/opt/AAS/domains/mydomain/config/apusic.conf”。配置地点如图所示:
在这里插入图片描述
3、启动金蝶
找到“/opt/AAS/domains/mydomain/bin”该路径在终端中打开,进行金蝶的启动命令“./startapsic”。

4、遇到问题
第一次部署需要金蝶密码。部署过程可能会有报错。需要根据控制台的提示解决。如果没有报错会显示:成功启动,服务器就绪。
在这里插入图片描述

5、登录金蝶界面
登录金蝶图形化界面
在这里插入图片描述

6、访问金蝶
在浏览器手动输入 并访问 “ip:配置的端口/admin”,此时会出现如图所示的界面。点击 “应用管理”,“参数配置”。需要在这个地方配置访问路径。
在这里插入图片描述
7、配置应用基础上下文
(1)前台包一般配置为:“/”, 需要根据具体需求配置。
(2)后台配置需要根据前端访问的路径配置。可以从访问接口中查看。例如:我们在获取后台验证码的接口中看到,前端访问后台的路径为"prod-api",所以将后台的应用基础上下文配置成“prod-api”。在这里插入图片描述
8、访问系统
(1)部署成功后,我们访问系统看看吧。通过“IP:配置的端口”进行访问。
(2)此时前台页面就出来了,前台包会自动找到后端包并进行访问,因此我们是不需要关注后台端口在金蝶中的配置的。只需要保证后端成功启动,并且配置的应用基础上下文正确。

3. 部署成功后的注意事项

1、后台启动命令
成功部署后,由于"./startapsic"在退出系统后会自动关闭金蝶,因此我们需要使用后台方式启动,使用命令
“nohup ./startapusic &”
出现不能正常启动的时候使用以下操作:
(1)查看端口占用:lsof -i:6888
(2)kill -9 pid
(3)启动金蝶nohup ./startapusic &
2、多个端口访问情况
(1)在很多项目中需要开放多个端口提供给用户登录使用。这种情况下我们只需要将子项目的打包文件和后台包再部署一套,放到金蝶的另一个域文件夹下进行部署。
(2)例如:
我们新建一个域文件为aaa,那么我们把前端子包和后端包放在aaa的文件夹下再次部署操作,路径如:“/opt/AAS/domains/aaa/applications”。
然后配置端口为前端子包想要的访问端口即可。

三、总结

1. 遇到的问题

1、找不到snakeyaml依赖包

定位:打包文件中包含snakeyaml包,但在上传文件的过程中丢失了。
解决方案:将snakeyaml包放到“域文件下的lib文件夹”中。这个lib是金蝶自带的,提供放依赖包的地方,只对当前domains下的应用起作用.

2、上下文冲突

原因:一个端口只能配置一个/访问目录
解决方案:
(1)部署到其他域
(2)修改代码,包括后台swagger,前台访问后台的代码

3、刷新后404
原因:路由改变
解决方案:手动添加web.xml.(查看上文)

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<error-page>
  <error-code>404</error-code>
  <location>/index.html</location>
  </error-page>
</web-app>

2. 总结

略略略

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

金蝶部署SpringBoot+vue项目总结 的相关文章

随机推荐

  • canvas四个点画矩形,中垂线,以及顶点拖拽

    场景 xff1a 已知四个点 xff0c 画出矩形 xff0c 并且计算出每个中垂线 xff0c 并加箭头 xff0c 标识符 xff0c 点击四个顶点还能拖拽进行变动 vue span class token operator lt sp
  • promise.all([]).then(() => {}).catch(() => {})异步处理

    场景 xff1a 在同一时间 xff0c 同时调用相同的接口 xff08 唯一不同 xff1a 接口传参不一样 xff09 简单写法 xff1a Promise span class token punctuation span span
  • git 修改远程仓库地址,用户名,地址

    在git上新建项目 然后讲本地原来的git clone地址更换成新建仓库的clone 地址 方法一 xff1a 1 删除本地仓库当前关联的无效远程地址 xff0c 再为本地仓库添加新的远程仓库地址 git remote span class
  • Docker Dockerfile

    什么是Dockerfile Dockerfile 是一个用来构建镜像的文本文件 xff0c 文本内容包含了一条条构建镜像所需的指令和说明 使用Dockerfile定制镜像 仅讲解如何运行Dockerfile 文件来定制一个镜像 1 定制一个
  • websocket

    在WebSocket API中 xff0c 浏览器和服务器只需要完成一次握手 xff0c 两者之间就直接可以创建持久性的连接 xff0c 并进行双向数据传输 webSocket方法 ws send 向服务器发送数据ws close 关闭连接
  • 搭建electron-vue下

    搭建electron vue下 npm install 后续问题Version 9 of Highlight js has reached EOL npm run dev 后续ReferenceError Unknown plugin 34
  • Centos 7 安装VNC步骤

    Centos7 安装 VNC 步骤 一 安装 1 以root 用户运行以下命令来安装vncserver yum install tigervnc server 2 同样运行以下命令来安装vncviewer yum install vnc 3
  • [记录]Ubuntu18.04使用桥接模式实现上网

    前言 一般在虚拟机中采用NAT模式就可以上网 其最大优势是虚拟系统接入互联网非常简单 xff0c 你不需要进行任何其他的配置 xff0c 只需要宿主机器能访问互联网即可 但是这种方式 虚拟机可以通过主机 单向访问 网络上的其他主机 xff0
  • Linux-浅谈系统调用

    我们开始研究操作系统中一个非常重要的概念 系统调用 大多数程序员在写程序时都很难离开系统调用 xff0c 与系统调用打交道的方式是通过库函数的方式 xff0c 库函数用来把系统调用给封装起来 xff0c 要理解系统调用的概念还需要一些储备知
  • 可复用软件模块的接口设计

    在上一篇博客中模块化代码的基本写法举例 青衫客36的博客 CSDN博客 xff0c 我们给出了模块化代码的基本写法 xff0c 本文我们继续探讨对menu程序进行改造 xff0c 使之成为可复用软件模块 下面先引入可重用软件的一些相关概念
  • Makefile实验

    一 准备C程序 1 input h ifndef INPUT H define INPUT H void input int int a int b endif 2 input c include lt stdio h gt include
  • CSAPPLab2- BombLab

    写在前面 xff1a 本次实验对GDB的使用提出了较高要求 xff0c 对GDB调试不了解的读者可以先移步到笔者的这篇博客 GDB调试实验 青衫客36的博客 CSDN博客 由于老师发布的压缩包中有48个bomb代码包 xff0c 根据 学号
  • 代码优化- 前端优化

    常量折叠 基本思想 xff1a 在编译期间计算表达式的值 xff08 编译时静态计算 xff09 例如 xff1a a 61 3 43 5 61 61 gt a 61 8 xff0c if true amp amp false 61 61
  • Haffman编码(算法导论)

    上次算法导论课讲到了Haffman树 xff0c 笔者惊叹于Haffman编码的压缩效果 xff0c 故想自己亲自动手尝试写一个极简的Haffman压缩程序 首先 xff0c 我们来了解一下什么是Haffman编码 Haffman编码 赫夫
  • C++ Primer- 变量声明和定义的关系

    为了允许把程序拆分成多个逻辑部分来编写 xff0c C 43 43 语言支持分离式编译 xff08 separatecompilation xff09 机制 xff0c 该机制允许将程序分割为若干个文件 xff0c 每个文件可被独立编译 如
  • Compiler Lab2- 自制极简编译器

    笔者实现的这个超级迷你版编译器 xff08 词法分析 语法分析 生成中间代码 xff08 cpp xff09 xff09 仅支持四则运算 xff0c 功能真的是非常非常简单 xff0c 不过其中的流程 xff08 词法分析 gt 语法分析
  • 贪心算法实现最佳任务调度实验

    题目描述 一个单位时间任务是恰好需要一个单位时间完成的任务 给定一个单位时间任务的有限集S 关于S 的一个时间表用于描述S 中单位时间任务的执行次序 时间表中第1 个任务从时间0 开始执行直至时间1 结束 xff0c 第2 个任务从时间1
  • 在CentOS安装CMake

    你或许听过好几种 Make 工具 xff0c 例如 GNU Make xff0c QT 的 qmake xff0c 微软的 MS nmake xff0c BSD Make xff08 pmake xff09 xff0c Makepp xff
  • CSAPP Lab3- bufbomb

    实验目标 xff08 1 xff09 掌握函数调用时的栈帧结构 xff08 2 xff09 利用输入缓冲区的溢出漏洞 xff0c 将攻击代码嵌入当前程序的栈帧中 xff0c 使得程序执行我们所期望的过程 实验代码 xff08 1 xff09
  • 金蝶部署SpringBoot+vue项目总结

    金蝶部署SpringBoot 43 vue项目文章目录 文章目录 金蝶部署SpringBoot 43 vue项目文章目录前言一 金蝶部署中两个重要概念1 域2 应用基础上下文 二 部署准备1 前后台打包2 部署过程3 部署成功后的注意事项