K8S-05-Jenkins部署springCloud项目-gateway

Jenkins部署springCloud项目-gateway

    • 代码结构及文件
    • Jenkins配置

代码结构及文件

在这里插入图片描述

application.yml文件内容

server:
  port: 9527
spring:
  application:
    name: cloud-gateway
  cloud:
    nacos:
      discovery:
        server-addr: 192.168.0.31:8848
    gateway:
      discovery:
        locator:
          enabled: true
      routes:
        - id: payment_routh #路由的ID,没有固定规则但要求唯一,建议配合服务名
          uri: lb://nacos-payment-provider #匹配后提供服务的路由地址
          predicates:
            - Path=/payment/**  #断言,路径相匹配的进行路由

Dockerfile文件内容

FROM openjdk:8-jdk-alpine
MAINTAINER HAN
COPY cloud-gateway-gateway-1.0-SNAPSHOT.jar /app.jar
ENTRYPOINT ["java","-jar","/app.jar"]

gateway-server.yaml文件内容

关于Docker私有镜像仓库搭建
参考 https://www.cnblogs.com/yanghe123/p/10838454.html

apiVersion: apps/v1
kind: Deployment
metadata:
  name: app-gateway
  namespace: default
spec:
  replicas: 3
  selector:
    matchLabels:
      app: app-gateway
  template:
    metadata:
      labels:
        app: app-gateway
    spec:
      containers:
        - name: app-gateway
          image: node1:5000/gateway:version-laster #自己的镜像仓库地址
          imagePullPolicy: Always
          ports:
            - name: http
              containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: app-gateway
  namespace: default
spec:
  selector:
    app: app-gateway
  ports:
    - name: http
      port: 9527
      targetPort: 9527
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: gateway-ingress
  annotations:
    kubernetes.io/ingress.class: "nginx"
spec:
  rules:
    - host: 自己的域名地址
      http:
        paths:
          - path: /payment
            backend:
              serviceName: app-gateway
              servicePort: 9527

Jenkins配置

正常操作不阐述
将jar包、Dockerfile、gateway-server.yaml 放到master以后

nowTime=$(date "+%Y%m%d%H%M%S")
cd /app/gateway
docker build -t gateway:$nowTime . #构建镜像 有个点!
docker tag gateway:$nowTime node1:5000/gateway:$nowTime #向镜像仓库打标签
docker push node1:5000/gateway:$nowTime #推送镜像
sed 's/version-laster/'$nowTime'/g' gateway-server.yaml -i #修改gateway-server.yaml中的版本号
kubectl apply -f gateway-server.yaml #构建应用

热门文章

暂无图片
编程学习 ·

仿element自定义进度条

由于element官网进度条是按百分比显示的 可选值只有0-100;如果是一个量值的显示,如图这样的用element进度条实现起来就比较麻烦,所以就有了下边的自定义进度条 github: https://github.com/Hans-326/ProgressBar
暂无图片
编程学习 ·

分布式数据存储系统之三要素

什么是分布式数据存储系统? 分布式存储系统的核心逻辑,就是将用户需要存储的数据根据某种规则存储到不同的机器上,当用户想要获取指定数据时,再按照规则到存储数据的机器里获取。 如下图所示,当用户(即应用程序)想要访问数据 D,分布式操作引擎通过一些映射方式,比如 H…
暂无图片
编程学习 ·

SQL存储过程

什么是存储过程,如何创建一个存储过程 * Stored Procedure * 存储过程=SQL语句+流控制语句定义存储过程定义 create procedure 存储过程名称(【参数列表】) begin 需要执行的语句 end. 创建CREATE PROCEDURE `get_hero_scores`( OUT max_max_hp FLOAT, OUT min_max_mp FLO…
暂无图片
编程学习 ·

Docker学习(一)

一、docker安装环境Ubuntu16.04 x64二、docker安装安装过程需要获取外网资源包,因此首先需要配置本地服务器DNS追加这两个DNS nameserver 8.8.8.8 nameserver 8.8.4.4Ubuntu配置DNS参考: https://blog.csdn.net/deep_kang/article/details/79599796 https://blog.csdn.net/wa…
暂无图片
编程学习 ·

培训网站比较-CSDN-51CTO-慕课网

本人是从事互联网行业,从码农到部门负责人,一路走来,最让我感受深刻的是,技术每天在更新迭代,自己一定要跟上脚步,不然很容易被淘汰。不管是作为技术人员还是部门管理者,技术能力必须得到重视。作为部门负责人,必须督促大家学习技术。我讲讲这几年在这方面的经历:一开…
暂无图片
编程学习 ·

前端面试题及答案.全全全!!!---js

HTML——CSS——JS——es6——Vue——微信小程序-----------服务器----------nodeJS面试题1.基本数据类型有哪几种?undefined,null,boolean,string,number,Symbol(es6)2.引用数据类型有哪些?Object,Array3.JavaScript的typeof返回的数据类型?string number array object fun…
暂无图片
编程学习 ·

考研初试备考,感谢曾经努力的自己

人生的第一篇博客,说晚不晚,以后我会好好学习IT技术,并腾出时间写写东西,想写这篇文章有很长时间了,当初写好了也没有发布,现在作为一个过来人润色一番,着手发布。找不到合适的平台、合适的时间、合适的场地、合适的心情以及合适的内容,现在才开始在CSDN动手写东西,然…
暂无图片
编程学习 ·

1.古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子, * 小兔子长到第三个月后每个月又生一对兔子, * 假如兔子都不死,问每个月的兔子对数为多少? * 分析: * 月份:1 2 3

package com.ujiuye.java;/*古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,* 小兔子长到第三个月后每个月又生一对兔子,* 假如兔子都不死,问每个月的兔子对数为多少?* 分析:* 月份:1 2 3 4 5 6 7 8 9...* 对数 :1 1 2 3 5 8 13 21... */ public class Dem…
暂无图片
编程学习 ·

zabbix(三)对服务的监控

文章目录zabbix(三)对服务的监控httpd/nginxmysql zabbix(三)对服务的监控 httpd/nginx 1>给 server2 添加 httpd 监控 但是这个 http 监控的监控项只有一个,下面在 server3 上自定义 nginx 的监控#源码编译 nginx,关闭 debug,添加监控模块 [root@server3 nginx-1.15.8]#./c…
暂无图片
编程学习 ·

[C/C++]覆盖与隐藏

①类的名字查询逻辑:前后有继承关系的类,其作用域实际上是嵌套的,即虽然我们写成两个类,父类和子类,看上去好像是分离的,实际上,他们就是另一种我们常见的类的关系,就是嵌套类。当我们申请了一个子类的对象,调用其中的一个继承而来的公有函数的时候,编译器实际上是首…
暂无图片
编程学习 ·

Java中的递归

Java中的递归(涉及到面试)举个例子: package com.wang.digui; /* 递归*/ public class Demo {public static void main(String[] args) {int calcetor = calcetor(3);System.out.println(calcetor);}//算阶乘的public static int calcetor(int n){if (n == 1){return 1;}els…
暂无图片
编程学习 ·

Kotlin上手(一)

标准函数with with函数接收两个参数,第一个参数是任意类型的对象,第二个是Lambda表达式。with函数会在Lambda表达式中提供第一个参数的上下文,并使用Lambda表达式中的最后一行代码作为返回值返回。 fun test() {val list = listOf("Apple", "Banana", &…
暂无图片
编程学习 ·

mysql服务无法启动,报服务正在启动或停止中,请稍后片刻再试一次

这个错误我尝试了网上好多得方法最后只能卸载重装是最简单得。 于是我后面就是卸载重装了。后面就不上图了。希望有朋友碰到这个问题能给我一个解决方法。 在这里特此说明,我写得所有博客都是小编自己实际操作得。碰到得问题记录和写下解决方法得。小编也验证了很多网上别人得…
暂无图片
编程学习 ·

Matrix工作室人事管理规章

第一条 总则 Happy Coding,Happy Earning. 为使Matrix工作室成员管理有所遵循,便于成员间的沟通交流和能力提升,特定本规则。 第二条 使命 使命是一个组织在社会进步和社会经济发展中所应担当的角色和责任,是一个组织的根本性质和存在理由。 为确定Matrix工作室实现远景目标必…
暂无图片
编程学习 ·

剑指 Offer-JZ25-复杂链表的复制

题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针random指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 解题思路代码实现 /…
暂无图片
编程学习 ·

网络安全技术及应用第3版 主编贾铁军等——教材习题 期末重点 复习题 知识提炼(第8章 防火墙应用技术)

参考教材:网络安全技术及应用 第3版 主编贾铁军等 第8章 防火墙应用技术填空题论述题1)==防火墙的 分类 及 主要技术 有哪些?==2)正确配置防火墙以后,是否能够必然保证网络安全?如果不是,试介绍防火墙的缺点。3) 防火墙阻止SYN Flood攻击,可使用SYN网关防护方式。说明S…
暂无图片
编程学习 ·

SqueezeNet/SqueezeNext简述 | 轻量级网络

SqueezeNet系列是比较早期且经典的轻量级网络,SqueezeNet使用Fire模块进行参数压缩,而SqueezeNext则在此基础上加入分离卷积进行改进。虽然SqueezeNet系列不如MobieNet使用广泛,但其架构思想和实验结论还是可以值得借鉴的。来源:晓飞的算法工程笔记 公众号SqueezeNet论文: …