如何部署 Vuejs 应用程序



我的应用程序有两个独立的部分,Java中的后端(Spring boot(Vuejs中的前端。

我可以简单地在需要的地方为后端代码部署JAR,这就是部署。

但是在部署Vuejs应用程序时,我可以做类似的事情,只需将编译的Vuejs应用程序放在Java Spring 启动应用程序中的正确路径中,这也将适用于前端。

对我来说,将该应用程序放在Spring 启动中似乎不对,因为它除了部署之外实际上不需要对它做任何事情(也许我不像 Jon Snow(那样一无所知(。

此外,当它放在Spring 启动应用程序下时,手动 URL 编辑不起作用。

此应用程序不会自行执行任何操作,它从后端应用程序获取所有数据。

那么我在这里有什么选择,有人可以指导我朝着正确的方向前进吗?

我只是设置一个nodejs服务器并在其中部署Vuejs应用程序吗?我不确定它是如何工作的,或者我是否应该为生产应用程序执行此操作。如果是这样,我从哪里开始设置nodejs

将它与 spring 一起部署是有意义的,这是非常普遍的做法,至少从我对 Angular 的经验来看(我想这与 VueJS 非常相似(。 您不需要运行 2 台服务器。你只需让Spring服务器你的HTML/js/CSS文件,这有助于你避免CORS的任何问题。

我不太确定"URL手动编辑"是什么意思,您通过编辑URL来导航网页是什么意思?我没有看到太多用例 tbh,我想这只是几个设置的问题。

在 gradle 中 - 我会设置一个构建任务(不确定任务是否正确,2 个 build.gradle 文件,每个文件用于 FE/BE,BE 将取决于 FE(,FE 将在 BE 运行时运行,它创建静态 HTML/js(在我的情况下来自 angular,但对于 Vue 应该类似(,BE 任务将输出添加到 java 应用程序的类路径中,以便 Spring 可以注册 HTML并为您服务。

您可以使用Docker创建Vue.js应用程序的Dockerized版本,然后将其部署到AWS(例如EC2(等云服务提供商上。

查看此链接以获取基本指南 https://v2.vuejs.org/v2/cookbook/dockerize-vuejs-app.html

我的方法是分别部署前端和后端。

你可以使用 Web 服务器将请求代理到 Vuejs 或 Spring boot。

例如,如果使用 Nginx,则可以使用此配置来传递请求

# pass root request to index file
location / {
root /front_files/;
index /index.html;
}
# pass requests to static files
location ~ ^/(js|styles) {
root /front_files/;
}
# pass requests to back-end
location /api/ {
proxy_pass http://127.0.0.1:8080/;
}

最新更新