k8s 部署 vue 项目

手把手带你玩转k8s-一键部署vue项目 前言 在快速开发框架-前端篇中少了一个章节,就是关于vue工程的一键发布脚本设计和实现。本文就在此展开,并部署到k8s环境中。 传统部署方式与k8s部署区别 在没有使用k8s之前的前后端分离项目部署,一般是依托于宿主机上的nginx。前端静态资源走nginx,后端接口会使用nginx做代理。而此时,nginx是提前安装的,所以一键脚本并不会考虑nginx的安装与运行,只会将打包好静态资源放在指定目录。使用k8s之后,一键脚本会有的区别,除了打包静态资源放在指定目录上,还要考虑nginx实例的运行。 传统 阅读详情

打包vue项目

npm run build

命令执行后,会产生dist文件夹,将dist文件夹通过xftp拷贝到服务器上自己新建的文件夹下

创建Nginx config配置文件

在同目录下新建 default.conf

server {
	listen       80;
	server_name  localhost;
	
	#charset koi8-r;
	access_log  /var/log/nginx/host.access.log  main;
	error_log  /var/log/nginx/error.log  error;
	
	location / {
	    root   /usr/share/nginx/html;
	    index  index.html index.htm;
	}
	
	#error_page  404              /404.html;
	
	# redirect server error pages to the static page /50x.html
	#
	error_page   500 502 503 504  /50x.html;
	location = /50x.html {
	    root   /usr/share/nginx/html;
	}
}

该配置文件定义了首页的指向为 /usr/share/nginx/html/index.html,所以我们可以一会把构建出来的 index.html 文件和相关的静态资源放到 /usr/share/nginx/html 目录下。

创建 Dockerfile文件

FROM 10.104.60.11/lib/nginx:1.18.0
MAINTAINER "lxc"
LABEL description="审计管理"
COPY dist/ /usr/share/nginx/html/
COPY default.conf /etc/nginx/conf.d/default.conf
EXPOSE 80
  • 自定义构建镜像的时候基于 Dockerfile 来构建
  • FROM nginx 命令的意思该镜像是基于 nginx:latest 镜像而构建的
  • COPY dist/ /usr/share/nginx/html/ 命令的意思是将项目根目录下 dist 文件夹下的所有文件复制到镜像中 /usr/share/nginx/html/ 目录下
  • COPY default.conf /etc/nginx/conf.d/default.conf 命令的意思是将 Nginx 目录下的 default.conf 复制到 etc/nginx/conf.d/default.conf,用本地的 default.conf 配置来替换 Nginx 镜像里的默认配置

制作镜像并上传

xxx 指的是服务器的ip地址

docker build -t web-audit:v1.1.0 .
docker tag web-audit:v1.1.0 xxx/k8s/web-audit:v1.1.0
docker push xxx/k8s/web-audit

编写 web-audit-cluster.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-audit
  namespace: wfw-test
  labels:
    app: web-audit
spec:
  replicas: 3
  selector:
    matchLabels:
      app: web-audit    # has to match .spec.template.metadata.labels
  template:
    metadata:
      labels:
        app: web-audit # has to match .spec.selector.matchLabels
    spec:
      imagePullSecrets:
        - name: harbor-secret
      containers:
        - name: web-audit
          image: xxx/k8s/web-audit:v1.1.0
          imagePullPolicy: Always
          #args: [--spring.profiles.active=cluster]
          ports:
            - containerPort: 80
              name: web-audit
          resources:
            requests:
              memory: 300Mi
              cpu: 200m
            limits:
              memory: 500Mi
              cpu: 400m

---
kind: Service
apiVersion: v1
metadata:
  name: web-audit
  namespace: wfw-test
  labels:
    app: web-audit
spec:
  ports:
    - name: web-audit
      port: 80
  selector:
    app: web-audit

---
#ingress
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: web-audit # Ingress 的名称
  namespace: wfw-test # 命名空间 接下来的部署都会使用这个命名空间
spec:
  rules:
    - host: audit.wyyy.com # 通过 Ingress 映射的地址 , 需要通过host去配置,下面讲解
      http:
        paths:
          - path: /
            backend:
              serviceName: web-audit # 这里对应着service 的 名字
              servicePort: 80 # 对应着需要映射的service的端口

kubectl create -f web-audit-cluster.yaml 

deployment.apps/web-audit created
service/web-audit created
ingress.extensions/web-audit created

# kubectl get pod -n wfw-test
NAME                              READY   STATUS    RESTARTS   AGE
web-audit-b7f58447d-d22qx         1/1     Running   0          13s
web-audit-b7f58447d-pw2rb         1/1     Running   0          13s
web-audit-b7f58447d-tv4pk         1/1     Running   0          13s

修改 C:\Windows\System32\drivers\etc hosts文件

新增如下:
xxx audit.wyyy.com

浏览器中输入 http://audit.wyyy.com/ 即可打开vue项目

Jenkins自动构建vue项目并部署至Kubernetes 目录一、安装JavaScript 运行环境Node.js二、配置Jenkins三、补充四、参考文档 本文基于上一篇文章的测试环境,通过jenkins构建一个简单的vue项目,并部署至上文的k8s集群中。 上文链接:https://blog.csdn.net/walkon1007/article/details/112769224 一、安装JavaScript 运行环境Node.js 下载地址:https://nodejs.org/en/download/ 我直接下载了二进制文件: wget https:// 阅读详情

相关推荐

【Kubernetes系列】K8s更新镜像的几种方法

以下以前端的服务为例,前端 yaml 文件内容如下: 二、更新镜像 1.方法一:修改 yaml 文件版本号并执行 将 改为: 执行:

邓邓子的博客 6181

K8s部署Vue应用

的

goodmentc的专栏 7890

阿里云k8s kubectl 一键部署vue+nginx

阿里云k8s kubectl 一键部署vue+nginx

k8s集群中部署微服务Vue

k8s集群中部署微服务Vue

qq_37892401的博客 837

数模笔记_多变量最优化计算之牛顿法

Date: 2_22 Name: Guo Yehao Theme: Calculation in Optimality with multiple variables Reference: 数学建模方法与分析(华章) 在上一节中,我们讨论多变量最优化计算中的随机搜索算法,它的精度并不是众多算法中最高的。在精度问题上,有的时候问题本身就带有明显的误差性,以至于我们不能将其忽略,比如上一节消防站部署的问题,我们在区域划分时就有了误差,因此我们并不需要对结果要求很高的精确度,所以用一些比较粗略的算法就可以.

weixin_45358177的博客 2415

Mixer-First Receiver适用于宽带阵列应用的接收机技术1

Mixer-First Receiver适用于宽带阵列应用的接收机技术1技术的背景单元级数字化阵列传统链路到Mixer-First链路的逻辑考虑三种场景小结 技术的背景 在文章《吊打全球的顶级毫米波数字阵列项目-MIDAS》中提到了DARPA在MIDAS项目中在毫米波实现宽带单元级数字化阵列用到了一个关键的叫做N-Path filter的技术,而这个技术同样出现在了《让微波射频工程师颤抖的芯片-MATRICs》的MATRICs芯片中。 为什么DARPA的各个合作研究机构选择这种技术?这篇来自Universi

ICONO的博客 2167

Kubernetes(K8S) + Harbor + Ingress 部署 SpringBoot + Vue 前后端分离项目

最后,在浏览器上通过访问域名,可以看到 K8S 部署 SpringBoot + Vue.js 项目成功!Ingress 域名解析用的是阿里云的真实域名地址,如果地区是大陆服务器还需要。模式可以完成服务对外提供访问的要求,但是真正企业级场景来说,更多的是使用。主要是用于 K8S 集群中资源隔离的,所以在这里我为项目创建一个命名空间。通过 IDEA 打开后端项目,记得调整一下配置文件,将。节点上,否则无法进行正确的访问,所以还需要修改。具体配置内容如下,注释写的很清楚,不多解释啦!

m0_74823524的博客 3376

手把手教你用VCS+VERDI搭建数字IC验证环境(附Makefile避坑指南)

本文详细介绍了如何使用VCS编译器和VERDI调试工具搭建数字IC验证环境,涵盖从RTL设计到波形分析的全流程。重点解析了Makefile自动化构建、FSDB波形生成方法及常见问题解决方案,帮助工程师高效完成验证工作。特别提供了VCS编译参数配置和VERDI调试技巧的实用指南。

weixin_33738578的博客 448

使用docker/k8s部署vue项目

使用docker/k8s部署vue项目 1. 编译前端项目 2. 将前端文件打包 注意不要将dist目录打进去,自打dist里的文件 3. Dockerfile 本次打包将前端项目打入nginx镜像的html即可 FROM nginx MAINTAINER zr ADD dist.tar.gz /usr/share/nginx/html EXPOSE 80 ENTRYPOINT nginx -g "daemon off;" 4. 打包镜像并推送 docker build -f Dockerfil

qq_31745863的博客 8750

字节跳动高频111道核心前端面试题解析,web开发增强

但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。内容包括html,css,JavaScript,ES6,计算机网络,浏览器,工程化,模块化,Node.js,框架,数据结构,性能优化,项目等等。自定义指令(v-check、v-focus)的方法有哪些?v-model是什么?

2401_84094620的博客 1200

图机器学习(2)——图的可视化

图结构可通过图形化方式直观呈现。节点通常用圆形表示,边则用连接线表示。然而当节点和边数量增加时,绘制清晰的图形表示可能会变得相当困难,这主要源于节点在二维坐标系中的布局问题。对于包含数百个节点的图,手动指定每个节点的坐标显然不切实际。在本节中,我们将介绍如何在不指定每个节点坐标的情况下绘制图形。我们将利用两种不同的解决方案:networkx 和 Gephi。

盼小辉丶的博客 8764

Kubernetes下完成Vue项目的部署

上一篇曾介绍过Vue在History 模式存在404刷新问题,故而需采用不同的方式部署,而最采用的当属Nginx了,由于目前微服务的广泛应用, Vue也将是架构师需要了解部署的一个必要内容,关于kubernetes容器化编排工具不在本文范畴,不再展示叙述。 下面就介绍Vue项目的dockerfile文件的编写内容如下: # STEP 1: Build FROM node:10.16 LAB...

无情的你,无情的雨! 1万+

AMD KFD的SDMA Packet 类型和定义解析

本文详细分析了AMD GPU架构中的SDMA(System Direct Memory Access)数据传输机制,重点介绍了其核心数据结构——SDMA Packet。SDMA通过8种主要Packet类型(包括内存拷贝、数据写入、屏障同步、中断触发等)实现高效主机-设备通信。每种Packet采用位域结构和联合体封装设计,在保证功能完整性的同时实现空间优化。这些Packet支持丰富的访问属性和扩展字段,适用于高性能数据搬运、内存初始化、任务同步、性能分析等场景,为GPU计算提供了灵活高效的数据传输解决方案。

图形/计算GPU的驱动与虚拟化技术分享园地 1254

vue项目通过jenkins部署到K8s

前端vue部署的项目自动打包发布部署到K8S上

weixin_37069728的博客 2054

基于STM32的多传感器融合的设施农业小型搬运机器人避障控制系统设计

针对设施农业场景中狭窄通道、障碍物多样(如农机具、作物植株、水管)的特点,设计一款基于 STM32 的小型搬运机器人避障控制系统。系统通过多传感器融合实现 360° 环境感知,采用模糊 PID 控制算法实现平滑避障,满足温室、大棚等场景的搬运需求。通过在温室环境测试,系统可实现对直径≥5cm 障碍物的有效检测(检测距离误差≤5%),避障转向半径≤30cm,平均功耗≤15W。后续可通过增加激光雷达(如 TFmini)提升远距离障碍物检测能力,结合 SLAM 算法实现路径规划。

weixin_42300449的博客 860

Unity大世界流式加载:工业级架构与优化秘籍

游戏大厂Unity大世界流式加载框架全景解析:从《原神》《和平精英》等标杆案例出发,深入剖析工业级流式加载的完整技术架构。文章系统介绍了大世界分区块管理、异步加载机制、资源优化策略、多平台适配方案,以及业务联动与团队协作流程。重点阐述了Addressable与AssetBundle应用、空间触发器设计、性能自适应等核心技术,并展望AI预测加载、云游戏等未来方向。全面展现了大厂如何通过流式加载技术实现无缝开放世界体验的技术路径与实践经验。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 607

k8s部署vue项目

1、环境准备 提前搭建好的k8s集群准备: 192.168.56.30(master节点) 192.168.56.31(node节点) harbor远程仓库准备: 192.168.56.14 2、创建nginx镜像 1)准备一个nginx安装包,我们这里的版本是1.18.0的 2)在同级目录下创建一个Dockerfile文件,内容如下 #基于centos基础镜像 FROM centos:7 #作者信息 MAINTAINER kgf #...

花&败 4664

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

k8s+harbor部署jar包和vue项目

利用Kubernetes(K8S)部署JAVA项目+vue项目。

u010797364的博客 1051

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

K8S部署vue、springboot前后端分离项目

K8S部署vue、springboot前后端分离项目k8s环境部署vue项目准备springboot项目准备k8s容器部署两个项目遇到的问题 k8s环境部署 因为换工作,新公司使用k8s部署环境,之前没有接触过k8s,所以打算先学一下,之前有过docker的学习经验。 看着各种博客和教学视频用kubeadm安装了k8s集群,过程当时没有记录,就不详写,这篇主要记录一个简单前后端分离项目的k8s部署 vue项目准备 前端界面不是很熟就下载了一个已经写好的项目再这个基础上进行修改的,就是这个项目vue-elem

u010809047的博客 5436

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

阿里云K8S部署Go+Vue项目

阿里云Kubernetes部署Go+Vue项目

寻找09之夏的博客 2268

Jenkins自动化部署Vue3项目至K8S实践

在项目根目录新建builds\k8stest目录,然后新建insole-tool.yaml文件,建好命名空间insole后,修改镜像名,可以直接拿来用。在Vue项目根目录新建default.conf文件,主要进行代理配置、首页配置、端口配置,需修改实际api与IP端口配置。我们希望提交uat分支时,UAT项目能够自动发布,提交master分支时,无需自动发布,管理员手工发布。在Vue项目根目录新建nginx.conf文件,主要配置请求体大小等,不需要修改。我们装好Webhook触发插件后,配置如图所示。

算法小生 786

k8s安装nginx部署前端页面_一个Nginx部署多个vue前端项目总结

摘要:近来接手了一个二次开发的前后端分离模式的项目,其中在前端项目的部署上需要让2个前端项目都部署到一个IP地址和端口下,那么我们这里就要用到Nginx了,接下来我们看看如何在一个Nginx下部署2个前端项目的编译打包2个前端项目执行如下命令执行对前端工程的打包,以生成静态文件,如下:npm run build把打包生成的静态文件上传到Linux服务器的指定目录,我这里是:/usr/local/l...

weixin_42306054的博客 1142

K8S+Dashboard部署(VMware+Centos7.9) 续二:K8S部署个nginx+vue项目

K8S部署个nginx+vue项目前端项目打包配置nginx.conf配置Dockerfile配置rc.yaml配置svc.yaml执行指令就完了 前端项目打包 npm run build #生成dist产物,压缩,上传到服务上边,每个节点都上传,解压 unzip 目标文件 配置nginx.conf http { include mime.types; default_type application/octet-stream; #log_format main

only_xiao_的博客 394
上一篇: k8sEfk快速搭建
下一篇: VsCode: 解决git总输入用户名和密码的问题
Zz_糖小七
博客等级 码龄10年 1732粉丝 42原创
评论 14
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值