当前位置: 首页 > news >正文

微信上的小说网站是怎么做的昆明seo网站建设

微信上的小说网站是怎么做的,昆明seo网站建设,自己做的网页可以上传网站吗,鱼爪商标交易平台目录前言开始前的准备第一次创建应用操作JenkinsGeneral源码管理构建Jenkins构建小结前言 前面写过一篇文章,kubernetes(k8s)滚动发布,不宕机实战已经实现了滚动发布,不过还得手工输命令,本篇呢想通过Jenkins实现一键操作。使发布…

目录

    • 前言
    • 开始前的准备
    • 第一次创建应用
    • 操作Jenkins
      • General
      • 源码管理
      • 构建
    • Jenkins构建
    • 小结

前言

  • 前面写过一篇文章,kubernetes(k8s)滚动发布,不宕机实战已经实现了滚动发布,不过还得手工输命令,本篇呢想通过Jenkins实现一键操作。使发布应用效率提高。
  • 其实像KubeSphere这类的工具也是集成了Jenkins的,之所以直接使用Jenkins,是因为那种大而全的工具必然会损耗资源,而我又用不上那么多的功能。

开始前的准备

  • JDK环境。
  • kubernetes。
  • Jenkins。安装好之后需要一些基础配置,可以参考拙作gitlab+jenkins自动发布到Tomcat。
  • Docker。
  • 我使用的项目地址是: https://github.com/1030907690/spring-boot-kubernetes。

第一次创建应用

  • 首先需要一个yaml文件(deployment.yaml),参考kubernetes(k8s)滚动发布,不宕机实战,去掉了ConfigMap的配置和command,代码如下。
apiVersion: apps/v1
kind: Deployment
metadata:name: spring-boot-kubernetes-deployment
spec:replicas: 2strategy:rollingUpdate:maxSurge: 1 # 最大峰值用来指定可以创建的超出期望 Pod 个数的 Pod 数量。此值可以是绝对数(例如,5)或所需 Pods 的百分比(例如,10%)maxUnavailable: 0 #最大不可用  是一个可选字段,用来指定 更新过程中不可用的 Pod 的个数上限。该值可以是绝对数字(例如,5)也可以是所需 Pods 的百分比(例如,10%)selector:matchLabels:app: spring-boot-kubernetes-deploymenttemplate:metadata:labels:app: spring-boot-kubernetes-deploymentspec:terminationGracePeriodSeconds: 300 #如果需要的优雅终止时间比较长 (preStop + 业务进程停止可能超过 30s),可根据实际情况自定义 terminationGracePeriodSeconds,避免过早的被 SIGKILL杀死,与下面preStop有关联,300属于总时间containers:- name: spring-boot-kubernetesimage: spring-boot-kubernetes:1.0.0imagePullPolicy: Never # 只使用本地镜像,防止ErrImagePull异常ports:- containerPort: 8080readinessProbe: #就绪探针httpGet:path: /port: 8080initialDelaySeconds: 50 #容器启动后要等待多少秒后才启动存活和就绪探测器, 默认是 0 秒,最小值是 0periodSeconds: 5  # 指定了 kubelet 应该每 5 秒执行一次存活探测。successThreshold: 1 #探测器在失败后,被视为成功的最小连续成功数。默认值是 1。 存活和启动探测的这个值必须是 1。最小值是 1。failureThreshold: 2 #当探测失败时,Kubernetes 的重试次数。 对存活探测而言,放弃就意味着重新启动容器。 对就绪探测而言,放弃意味着 Pod 会被打上未就绪的标签。默认值是 3。最小值是 1env: # 解决Java程序时区问题- name: TZvalue: Asia/Shanghailifecycle:preStop:exec:command: ["/bin/sh","-c","echo this pod is stopping. > /stop.log && sleep 90s"]
  • 我需要spring-boot-kubernetes:1.0.0这个镜像,我手动创建一下。

Dockerfile文件和jar同一级目录

在这里插入图片描述

  • Dockerfile文件内容。
FROM openjdk:8
ADD spring-boot-kubernetes-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT [ "java", "-jar", "/app.jar"]
  • 然后用命令。
 docker build -t spring-boot-kubernetes:1.0.0 .

在这里插入图片描述

  • 开始首次运行,创建应用。
 kubectl apply -f deployment.yaml
  • 运行了2个Pod,如下所示。

在这里插入图片描述

操作Jenkins

  • 怎么下载、运行Jenkins就不赘述了,可以参考拙作gitlab+jenkins自动发布到Tomcat。
  • Jenkins配置maven、jdk、git等等同样可以参考拙作gitlab+jenkins自动发布到Tomcat。
  • 下面直接创建自由风格项目。进入配置。

General

在这里插入图片描述

源码管理

  • 源码管理填写仓库地址和分支,因为我是公共项目,所以不需要帐号密码。
    在这里插入图片描述

构建

在这里插入图片描述

  • 先用maven打包

这里不需要加mvn

  • 然后执行脚本。
#!/bin/bash
sh rolling_update.sh
  • rolling_update.sh脚本内容。
 #!/bin/bash
ls
cp src/main/resources/Dockerfile target 
ls target
cd target
date=`date "+%Y%m%d%H%M%S"`
# 构建镜像
docker build -t spring-boot-kubernetes:$date .
# 滚动更新
kubectl set image  deployment/spring-boot-kubernetes-deployment  spring-boot-kubernetes=spring-boot-kubernetes:$date --record
# 查看Pod情况
kubectl get pod -o wide
# 查看滚动更新状态
kubectl rollout status deployment/spring-boot-kubernetes-deployment
# 查看Pod情况
kubectl get pod -o wide
  • Dockerfile文件内容。
FROM openjdk:8
ADD spring-boot-kubernetes-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT [ "java", "-jar", "/app.jar"]

Jenkins构建

  • 下面就可以使用Build Now一键发布最新的应用。
    在这里插入图片描述
  • 可以查看构建历史,如果有错误的时候,方便排查错误。
    在这里插入图片描述
    在这里插入图片描述
  • 如果你不想点Build Now,也可以使用Webhook,可以参考拙作gitlab+jenkins自动发布到Tomcat。
  • 以上就把Jenkins和kubernetes(k8s)结合起来实现滚动发布了。

小结

  • 本文先把应用创建一次。然后Jenkins就做滚动发布的事情,分成这2个步骤。
http://www.lbrq.cn/news/2732617.html

相关文章:

  • 网站备案 法人代表厦门百度竞价开户
  • 上海建设银行官网网站6视频优化是什么意思
  • php网站建设的公司宝鸡网站seo
  • 做门户网站那个系统好网站页面优化方法
  • 网站后台管理怎么做友情链接培训机构如何招生营销
  • 龙岗网站制作资讯广州百度推广开户
  • 成都建工路桥建设有限公司网站北京seo怎么优化
  • 美国一个分享怎么做的网站叫什么营销页面设计
  • 北京网站设计技术太原seo代理商
  • 合肥工程建设信息网站杭州seo搜索引擎优化公司
  • 两个域名指向同一个网站怎么做谷歌平台推广外贸
  • 做网站经营流量企业营销策划书范文
  • 网站图怎么做会高清付费恶意点击软件
  • 网站开发需要英语太原seo关键词排名
  • 站酷网网址西安seo黑
  • 网站建设_制作_设计免费友情链接网页
  • 宁波网站排名公司官方进一步优化
  • 购物网站开发问题域分析余姚网站seo运营
  • 做女朋友的网站网站建设公司排名
  • 网站开发企业部门口碑营销5t
  • 北京品牌高端网站建设公司网络营销课程培训机构
  • 网站的模块seo 优化一般包括哪些内容
  • 丽水哪里做网站线上销售如何找到精准客户
  • seo优化的网站邮件营销
  • php做电子商城网站seo系统源码
  • 做市级网站需要什么私人做网站
  • 靠谱的中文wordpress主题360手机优化大师下载
  • 织梦 去掉我的网站长春seo优化
  • 中国十大少儿编程教育品牌怀化网站seo
  • 企业网站的建立费用电商网络销售是做什么
  • (第十七期)HTML图像标签详解:从入门到精通
  • linux I2C核心、总线与设备驱动
  • Python爬取推特(X)的各种数据
  • 活侠传 送修改器 免安装中文版
  • 自定义数据集(pytorchhuggingface)
  • 【测试工具】JMeter基本使用及MySQL数据库压力测试