使用k8s发布我们的应用程序大概有如下几步
1、打包应用服务
2、根据应用服务创建镜像
3、将打包的镜像推送到我们创建的docker私服
4、在k8s的Master节点编写yaml文件
5、根据yaml文件创建相关的pod和service
       下面以spring cloud中的注册中心eureka为例做一个k8s发布应用程序的实例(在k8s环境中不建议使用eureka做微服务的注册发布的组件,本次只是验证k8s发布应用程序的过程,别无他意)。
1.打包应用服务
       我们在服务上发布的为jar包,只要把应用程序打包成jar包即可

2.根据应用服务创建镜像
       在给应用程序制作镜像请确保机器上安装了docker服务
       在这里我们使用dockerfile文件制作应用程序镜像,dockerfile文件如何编写请读者自行查找相关资料。应用程序上传到与dockerfile统一目录下,如下图

执行命令:docker build -t itmuch/wyzx-frame-eureka:0.0.1 .,生成镜像。请注意命令后面的.,其代表当前目录。如下图:

我们查看镜像是否已存在,执行命令docker images,如下图


如上所示,镜像已经生成

3.镜像推送到docker私服
       私服搭建请参考如下方式:
拉取镜像:docker pull docker.io/registry
验证:docker images 查看本地镜像列表

运行: 对外端口5000 后台默认运行,起别名registry2

docker run -p5000:5000 -d docker.io/registry --name=registry2

本机验证: docker ps
如上所示,docker私服已经启动了。

推送镜像到私服
1.修改镜像标签
docker tag itmuch/wyzx-frame-eureka:0.0.1 localhost:5000/itmuch/itmuch/wyzx-frame-eureka:0.0.1
2.推送镜像到私服
docker push localhost:5000/itmuch/itmuch/wyzx-frame-eureka:0.0.1,如下图3.查看推送是否成功,在浏览器输入如下地址,http://192.168.0.106:5000/v2/_catalog(我的docker私服服务器的ip为192.168.0.106),如下图,证明镜像是推送成功的

注意:在镜像上传私服或者下载镜像的时候遇到如下错误

Error response from daemon: Get https://RegistryHost:5000/v2/: http: server gave HTTP response to HTTPS client.

原因: 私服默认都是开启https传输,普通http请求方式就会出现如上错误
解决方案:更改docker配置文件(/etc/docker/daemon.json),增加如下配置
重启docker即可

4.编写yaml文件
       为了简单起见,只编写两个yaml文件 rc文件和svc文件,文件内容如下

eureka-rc.yaml
eureka-svc.yaml

5.根据yaml文件创建相关的pod和service
       进入Master节点的存放yaml文件目录,执行创建命令,如下图
输入kubectl命令,检查pod、service创建是否成功,如下图
如上,创建都是成功的

6.验证
       在浏览器上输入地址:192.168.0.106:30301,如下图:
如上图说明发布是成功的。请确保宿主机器端口是开放的,否则可能无法访问。

以上就是使用k8s发布应用程序的简单实例的全过程。当然以上过程可通过jenkins和脚本做一键自动化部署,本次只是为了说明使用k8s发布应用程序的详细过程。

一个使用k8s发布应用程序的简单实例相关推荐

  1. python软件代码示例-用Python写一个模拟qq聊天小程序的代码实例

    Python 超简单的聊天程序 客户端: import socket, sys host = '10.248.27.23' # host = raw_input("Plz imput des ...

  2. 能不能用python开发qq_用Python写一个模拟qq聊天小程序的代码实例

    用Python写一个模拟qq聊天小程序的代码实例 发布时间:2020-09-09 07:49:29

  3. 用Python写一个模拟qq聊天小程序的代码实例

    前言 今天小编就为大家分享一篇关于用Python写一个模拟qq聊天小程序的代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧 Python 超简单的聊天 ...

  4. php取随机数组的一个_php 数组随机取值的简单实例

    array_rand() 在你想从数组中取出一个或多个随机的单元时相当有用.它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1. ...

  5. java采集_Java实现一个小说采集程序的简单实例

    被标题吸引进来的不要骂我. 只是一个简单的实现,随手写了来下载一部喜欢的小说的.示例中的小说只是示例,不是我的菜. 使用了jsoup.挺好用的一个工具. 有需要的话,参考下自己改吧.挺简单的,是吧. ...

  6. 用python做毕业设计小程序_用Python写一个模拟qq聊天小程序的代码实例

    Python 超简单的聊天程序 客户端: import socket, sys host = '10.248.27.23' # host = raw_input("Plz imput des ...

  7. 如何利用python实现qq聊天_用Python写一个模拟qq聊天小程序的代码实例

    Python 超简单的聊天程序 客户端: import socket, sys host = '10.248.27.23' # host = raw_input("Plz imput des ...

  8. 微信小程序 购物车简单实例

    微信小程序,这里实现购物车功能的小demo,有需要此功能的朋友可以参考下. 摘要: 加减商品数量,汇总价格,全选与全不选 设计思路: 一.从网络上传入以下Json数据格式的数组 1.购物车id:cid ...

  9. Citrix XenApp 6.0 发布应用程序时 ICO 错误的解决方法

    XenApp 6.0在测试运行中发现某些应用程序发布过程中出现ICO错误信息,而无法进行下去.如下图 这个信息显示我发布应用程序 MindManager 9时,出现ICO格式错误信息.点击继续,下一步 ...

最新文章

  1. 基于先验LiDAR点云地图的单目VIO定位(IROS 2020)
  2. linux安装perl编译环境,CentOS7 安装 perl 环境
  3. 使用httpd-2.2和httpd-2.4实现指定httpd服务
  4. 给服务器端下拉asp:DropDownList 绑定改变事件,Ajax绑定下拉
  5. Spirng mvc 参数绑定
  6. 设计模式之——bridge模式
  7. 21、OSPF配置实验之特殊区域totally stub
  8. linux搭建.net开发环境,ASP.NET Core知多少(5): Linux上搭建.Net Core开发环境
  9. word怎么把页面顺序倒过来_word设置倒序打印的方法
  10. RAR与ZIP区别,哪个比较好用!
  11. 智能陈桥输入法软件测试,智能陈桥五笔输入法
  12. 计算机基础实训项目二 Word 综合应用,计算机应用基础-实训项目二 Word 综合应用[优质文档]...
  13. 【CTF】Misc7——乌云邀请码+图穷匕见+convert
  14. GIF一下你也可以拍大片 微影戏程序
  15. git cz: Missing script: “test“ To see a list of scripts, run: npm run
  16. 0CTF/TCTF 2021 Quals_Misc_singer
  17. JuiceFS 在数据湖存储架构上的探索
  18. linux故障报错及解决方法
  19. 用计算机拜年祝福语,新年祝福语:拜年用语
  20. 系统坏了,该怎么办呢?电脑小白必备的装机指南

热门文章

  1. DSR (串口通信中的术语)
  2. 对于react-thunk中间件的简单理解
  3. 陈一舟:国内SNS社区的战斗已经结束
  4. 设计模式(十二)-装饰器模式(Decorator Pattern)——装饰边框与被饰物的一致性
  5. java毕业设计小区物业管理系统mybatis+源码+调试部署+系统+数据库+lw
  6. C#,生信软件实践(03)——DNA数据库GenBank格式详解及转为FASTA序列格式的源代码
  7. python继承和方法重写
  8. 为什么中国出不了Facebook和Twitter?
  9. matlab绘图(其他形式的二维曲线)
  10. 有了这 18 个免费的React模板以后,也太省事了吧!!