kubeSphere DevOps部署vue项目

devops部署vue项目

  • 🌔环境说明
    • 🌏创建DevOps工程
    • 🌏填写流水线信息
    • 🌏创建流水线
  • 🌔部署应用所需脚本
    • Jenkinsfile
    • Dockerfile
  • 🌔脚本一些参数如何设置说明
    • 🌏deploy.yaml中的:imagePullSecrets:name属性
    • 🌏jenkinsfile中的kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID"
    • 🌏jenkinsfile中的git-code-auth属性

🌔环境说明


  • 已经安装kubesphere的devops组件
  • 安装教程可参考官方文档:https://v3-1.docs.kubesphere.io/zh/docs/pluggable-components/devops/

🌏创建DevOps工程


在这里插入图片描述
在这里插入图片描述

🌏填写流水线信息


在这里插入图片描述
在这里插入图片描述

🌏创建流水线


1 我们编写JenkinsFile
在这里插入图片描述

流水线的部署流程如下图

拉取代码
编译代码
打包镜像
推送镜像
部署应用

🌔部署应用所需脚本

Jenkinsfile

pipeline {agent {node {label 'nodejs'}}stages {stage('拉取代码') {agent nonesteps {git(url: '代码地址', credentialsId: 'git-code-auth', branch: 'pro', changelog: true, poll: false)}}stage('构建代码') {agent nonesteps {container('nodejs') {sh '''ls
npm install --force
npm run build:k8sprod'''}}}stage('构建镜像') {agent nonesteps {container('nodejs') {sh 'ls'sh 'docker build -t tingyuan-cloud-service-web-admin:latest .'}}}stage('推送镜像') {agent nonesteps {container('nodejs') {withCredentials([usernamePassword(credentialsId: 'aliyun-docker', passwordVariable: 'DOCKER_PASSWORD_VAR', usernameVariable: 'DOCKER_USER_VAR',)]) {sh 'echo "$DOCKER_PASSWORD_VAR" | docker login $REGISTRY -u "$DOCKER_USER_VAR" --password-stdin'sh 'docker tag admin:latest 镜像仓库地址:SNAPSHOT-$BUILD_NUMBER'sh 'docker push 镜像仓库地址:SNAPSHOT-$BUILD_NUMBER'}}}}stage('发布应用') {agent nonesteps {kubernetesDeploy(configs: 'deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")}}}environment {DOCKER_CREDENTIAL_ID = 'dockerhub-id'GITHUB_CREDENTIAL_ID = 'github-id'KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'REGISTRY = '镜像仓库地址'GITHUB_ACCOUNT = 'kubesphere'DOCKERHUB_NAMESPACE = '镜像仓库命名空间'}parameters {string(name: 'TAG_NAME', defaultValue: '', description: '')}
}

Dockerfile

FROM nginx
LABEL maintainer=hrd
COPY dist /usr/share/nginx/html/
EXPOSE 80

apiVersion: apps/v1
kind: Deployment
metadata:labels:app: 我用的是前端项目,可以自行决定叫什么name: 我用的是前端项目,可以自行决定叫什么namespace: ty   #一定要写名称空间
spec:progressDeadlineSeconds: 600replicas: 1selector:matchLabels:app: 我用的是前端项目,可以自行决定叫什么strategy:rollingUpdate:maxSurge: 50%maxUnavailable: 50%type: RollingUpdatetemplate:metadata:labels:app: 我用的是前端项目,可以自行决定叫什么spec:imagePullSecrets:- name: aliyun-docker  #提前在项目下配置访问阿里云的账号密码containers:- image: 镜像仓库地址,我用阿里云镜像仓库imagePullPolicy: Alwaysname: appports:- name: http-80containerPort: 80protocol: TCPresources: {}terminationMessagePath: /dev/termination-logterminationMessagePolicy: FilednsPolicy: ClusterFirstrestartPolicy: AlwaysterminationGracePeriodSeconds: 30
---
apiVersion: v1
kind: Service
metadata:labels:app: 我用的是前端项目,可以自行决定叫什么name: 我用的是前端项目,可以自行决定叫什么namespace: ty
spec:ports:- name: httpport: 80protocol: TCPtargetPort: 80selector:app: 我用的是前端项目,可以自行决定叫什么sessionAffinity: Nonetype: ClusterIP

🌔脚本一些参数如何设置说明

🌏deploy.yaml中的:imagePullSecrets:name属性

imagePullSecrets:- name: aliyun-docker  #提前在项目下配置访问阿里云的账号密码 

在这里插入图片描述
在这里插入图片描述
选择刚才添加的,添加凭证设置变量
在这里插入图片描述

🌏jenkinsfile中的kubeconfigId: “$KUBECONFIG_CREDENTIAL_ID”

在这里插入图片描述
在这里插入图片描述

🌏jenkinsfile中的git-code-auth属性

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/345979.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OceanBase 4.2特性解读:Show Trace全链路跟踪,助力快速问题定位与精准诊断

在分布式数据库环境下,慢 SQL 诊断是运维人员面临的一大挑战。在无法及时发现问题根本原因的情况下,可能会严重影响用户体验,甚至会导致业务服务不可用。相对于单机数据库,分布式数据库系统涉及多个节点、多组件的协同工作&#x…

深度学习烦人的基础知识(2)---Nvidia-smi功率低,util高---nvidia_smi参数详解

文章目录 问题现象解释解决方案 磨刀不误砍柴工--nvidia-smi参数解读 问题 如下图所示,GPU功率很低,Util占用率高。这个训练时不正常的! 现象解释 Pwr是指GPU运行时耗电情况,如图中GPU满载是300W,目前是86W与GPU2的…

互联网加竞赛 基于机器学习与大数据的糖尿病预测

文章目录 1 前言1 课题背景2 数据导入处理3 数据可视化分析4 特征选择4.1 通过相关性进行筛选4.2 多重共线性4.3 RFE(递归特征消除法)4.4 正则化 5 机器学习模型建立与评价5.1 评价方式的选择5.2 模型的建立与评价5.3 模型参数调优5.4 将调参过后的模型重…

如何领取腾讯云免费服务器?腾讯云服务器免费领取教程

腾讯云免费服务器申请入口 https://curl.qcloud.com/FJhqoVDP 免费服务器可选轻量应用服务器和云服务器CVM,轻量配置可选2核2G3M、2核8G7M和4核8G12M,CVM云服务器可选2核2G3M和2核4G3M配置,腾讯云百科txybk.com分享2024年最新腾讯云免费服务器…

C语言辨析——这个字符串长度是多少?

1. 问题 请问字符串"\tac\b\b\x41\nc\104\""的长度是多少? 2. 解答 该字符串的长度为10。这10个字符分别是水平制表符\t,a,c,两个退格符\b,\x41对应的字符’A,换行符\n,c&…

第十七周周报

文章目录 摘要目标检测锚框交并比NMS 非极大值抑制输出 文献阅读:SMPL: A Skinned Multi-Person Linear ModelIntroductionRelated WorkModel FormulationTraining评估动态SMPL讨论结论 总结 摘要 本周看了三维人体重建的领域,看了一篇SMPL的文章&#…

腾讯云免费服务器-多规格高配服务器0元试用,开箱即用

腾讯云免费服务器申请入口 https://curl.qcloud.com/FJhqoVDP 免费服务器可选轻量应用服务器和云服务器CVM,轻量配置可选2核2G3M、2核8G7M和4核8G12M,CVM云服务器可选2核2G3M和2核4G3M配置,腾讯云百科txybk.com分享2024年最新腾讯云免费服务器…

大数据之谷歌文件系统论文 GFS The Google File System

原文地址 谷歌文件系统论文 摘要 我们设计并实现了Google文件系统,这是一个面向大规模分布式数据密集型应用的可扩展分布式文件系统。 它在廉价的通用硬件上运行,提供了容错性,并向大量客户端提供高聚合性能。 尽管与先前的分布式文件系统…

全网唯一!Matlab周杰伦专辑配色包MJay

前段时间杰伦出了新歌,第一时间听完,感觉没过瘾,便又翻出他以前的作品,想着继续回忆青春。 翻着翻着,突然发现每张专辑封面的配色都别有一番味道,似乎可以搞些事情…… 于是,我默默打开了Matl…

Matlab:toposort

语法: n toposort(G) %调用toposort函数,对有向图G进行拓扑排序,并将排序结果存储在变量n中 n toposort(G,Order,algorithm) [n,H] toposort(___) %使用了两个输出参数的形式来调用toposort函数。除了返回排序结果n外&am…

直接写一区! ZOA-PCNN-AT-SVM斑马优化并行卷积-支持向量机融合注意力机制的故障识别程序,特征可视化,实验多!图多!

适用平台:Matlab2023版本及以上 本原创程序提出的ZOA-PCNN-AT-SVM故障识别模型还没有人写!在此基础上进一步对参考模型进行多重改进,程序注释清晰,干货满满,下面对文章和程序做简要介绍! ①识别模型部分参…

Realm Management Extension领域管理扩展(下)

四、颗粒保护检查 本节描述了RME引入的颗粒保护检查。颗粒保护检查使得能够在不同的物理地址空间之间动态分配内存区域。 本节将向您介绍以下功能: 颗粒保护表的结构用于颗粒保护检查的故障报告区域在物理地址空间之间的过渡正如在物理地址一节中所述,RME提供了四个物理地址…