本文面向的读者

如果您是一个Kubernetes的初学者,本文可以帮助你快速在云上搭建一个可实际使用的集群环境,并发布自己的第一个应用。你无须提前准备任何的硬件资源或者下载任何的软件包。 
如果您已经有一个自建的Kubernetes集群,想要尝试阿里云上的托管集群,本文可以帮助你快速完成上手操作,而无需详细阅读阿里云的帮助文档,从而节省您的时间。您可以在有了端到端的初体验之后,再有选择的阅读容器服务和容器镜像服务的帮助文档。 
如果你已经有一个传统的部署在云上的Web应用(比如部署在云上的ECS里),想要进行容器化的改造,本文同样可以帮助到您,您甚至无需深入学习Kubernetes,只需了解基本概念即可。

准备代码

本文的操作全部基于阿里云控制台,因此您只需要一个阿里云控制台的登录账号即可。 
我们先把应用的代码准备好。请登录https://code.aliyun.com/ ,登录完成后,访问https://code.aliyun.com/shengbo.tsb/yunputest ,点击派生项目(fork)的图标。

在随后弹出的确认框里,点击头像确认,完成派生。

备选方案:如果您派生遇到了困难,可以直接从https://github.com/docker-training/webapp clone这个项目,然后自己通过git push到code.aliyun.com上。

准备镜像仓库

登录https://cr.console.aliyun.com/cn-beijing/instances/repositories 
在左侧导航栏选择“命名空间”

点击“创建命令空间”,输入名字“tengshengbo”。

确认命名空间创建完成之后,点击左侧导航栏“镜像仓库”,点击“创建镜像仓库”,输入仓库名称“yunputest”

在下一步,选择刚刚建立的代码仓库。选择“海外机器构建”以加快构建速度。提示:如果下拉框没有代码仓库,点击右侧的刷新按钮。

创建新镜像

回到https://code.aliyun.com/ 点击yunputest这个项目,注意,是自己名下的项目,而不是shengbo.tsb这个账号名下的项目。 点击“新标签”.

输入标签名release-v1.5。注意,您必须使用release-v[版本号]形式,比如release-v2.5或者其他。

返回镜像仓库列表,https://cr.console.aliyun.com/cn-beijing/instances/repositories 
选择自己的镜像仓库,左侧导航选择“构建”,可以看到一个构建自动生成了。

创建Kubernetes集群

访问容器服务控制台 https://cs.console.aliyun.com/#/k8s/cluster/list 
选择“创建Kubernetes集群”, 集群模板选择第一个“标准托管集群”

集群名称选择“yunpu-k8s”,选择专有网络和虚拟交换机,勾选公网访问(为了开发测试方便),选择实例类型(如果不考虑性能,单纯为了省钱,可以使用t5或者t6实例),其他默认就好。

注意:Pod CIDR,Service CIDR不能与VPC内已有网段冲突,如果提示有错误,请更换网络的CIDR。

在确认对话框里勾选协议,完成创建。之后,确认自己的集群运行中。

部署第一个应用

容器服务的左侧导航栏选择“应用-无状态”,点击“使用镜像创建”,在“应用基本信息”这一部分, 输入应用名称yunpuapp, 选择刚创建的集群yunpu-k8s, 其他默认。

下一步,容器配置,镜像名称一项,点击“选择镜像”,选择刚才自动从代码创建的镜像

镜像Tag一项,点击“选择镜像Tag”,选择你刚刚自己定义的版本号,比如1.4。其他保持默认。 
点击下一步。

在高级配置里面,点击“服务(Service)”旁边的“创建”,

端口映射一项,输入名称port,注意服务端口80,容器端口5000.

点击“路由(Ingress)”旁边的“创建”,输入域名yunpuapp选择刚刚创建的服务以及port。

创建成功之后,可以看到应用的访问方式,在“路由(Ingress)”里面,“规则”一项,有一个链接。

点击这个链接,可以访问应用,显示内容包含响应时间、应用运行时的host name以及IP地址。多次刷新链接,可以看到不同的ip地址,这个说明后面对应的容器组Pod是多个。

升级应用

建议您自行尝试更改应用的代码,比如简单更改webapp/app.py这个文件,完成git tag后,git push.

$ git tag release-v1.5
$ git push origin release-v1.5

或者,您也可以直接在 https://code.aliyun.com/ 控制台上,为master分支新建标签release-v1.5

等待镜像更新完成后,在“无状态应用”页,点击应用旁边的“编辑”。

编辑页面,选择新的版本1.5,点击更新

下一步

阿里云的容器服务Kubernetes不是只有托管版,还有专有版和Serverless版。专有版适合有丰富的容器运维经验,希望长时间运行某个应用,并且独立自主运维全部基础设施的的大企业用户。Serverless版适合不希望关心基础设施的运维,或者只是短时间运行某个应用从而希望开箱即用的中小企业用户。本文介绍的托管版则介于专有版和Serverless版两者之间。

原文链接
本文为阿里云原创内容,未经允许不得转载。

一小时快速搭建基于阿里云容器服务-Kubernetes的Web应用相关推荐

  1. 区块链应用@纸贵科技:基于阿里云容器服务护航内容版权

    摘要: 区块链如何护航内容版权? 区块链已经成为业界内外家喻户晓的一门技术,很多企业已经开始尝试将区块链应用于不同场景.目前,开源的Hyperledger Fabric区块链技术与容器技术的应用组合已 ...

  2. 基于阿里云容器服务的微服务实践 - Part 1. 微服务与Docker

    基于阿里云容器服务的微服务实践 基于阿里云容器服务的微服务实践 - Part 1. 微服务与Docker 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页:http://blo ...

  3. Docker监控:基于阿里云容器服务构建自己的Docker监控框架

    微服务架构通过将一个复杂系统分解成一系列独立开发.部署和运维的服务,提升了整个系统的敏捷性,可以灵活的响应业务和规模的变化.而Docker技术则将服务的部署和环境完全解耦,利用Docker的可移植性和 ...

  4. 比心云平台基于阿里云容器服务 ACK 的弹性架构实践

    作者:韩韬|比心技术 前言 应用容器化改造后,不可避免地会面临这样一个问题:Kubernetes 集群的 Node 资源配置不足会导致 Pod 无法及时运行,购买过多的 Node 又会导致资源的闲置浪 ...

  5. 使用阿里云容器服务Kubernetes实现蓝绿发布功能

    背景 在发布应用时,经常需要先上线一个新版本,用较小的流量去测试一下该新版本的可用性.但是Kubernetes的ingress resource 并没有实现流量控制与切分的功能,导致针对同一个域名下的 ...

  6. CICD联动阿里云容器服务Kubernetes实践之Bamboo篇

    本文档以构建一个 Java 软件项目并部署到 阿里云容器服务的Kubernetes集群 为例说明如何使用 Bamboo在阿里云Kubernetes服务上运行Remote Agents并在agents上 ...

  7. 【阿里云-容器】阿里云容器服务Kubernetes版快速入门

    一.部署并公开 本步骤指导您如何在ACK集群中快速部署一个无状态应用(Deployment),即魔方游戏,并将该应用向公网公开.关于创建Deployment的详细参数描述,请参见创建无状态工作负载De ...

  8. 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1

    摘要: 全球开源区块链领域影响最为广泛的Hyperledger Fabric日前宣布了1.1版本的正式发布,带来了一系列丰富的新功能以及在安全性.性能与扩展性等方面的显著提升.阿里云容器服务区块链解决 ...

  9. 阿里云容器服务cni网络插件terway非官方网络性能测试

    作者:张荣滨,酷划在线后端架构师,关注微服务治理,容器化技术,Service Mesh等技术领域 terway网络性能测试 酷划在线成立于2014年,是国内激励广告行业的领军者.酷划致力于打造一个用户 ...

最新文章

  1. Oracle中Null与空字符串' '的区别
  2. Spring 如何解决循环依赖?
  3. 2010C语言添加背景图片_2019级C语言大作业 - 火柴人试炼之地
  4. nginx upstream 模块详解
  5. 如何“暴力破解”Oracle性能优化的极端问题(附精彩案例解读)
  6. 马云在《赢在中国》对创业者的经典点评
  7. PLSQL Split分割字符串
  8. Silverlight显示滚动条
  9. MOSFET与三极管
  10. Maven之(七)pom.xml配置文件详解
  11. CAD零基础教程笔记
  12. android:ems 属性详细分析
  13. Tent-Logistic-Cosine混沌映射(提供参考文献及Matlab代码)
  14. 管理系统中计算机应用VIF,vif第1章课件.ppt
  15. PAT 乙级 1065 单身狗 (25 分)
  16. C语言递归算法——汉诺塔问题(河内塔)
  17. JavaSwing_3.5: JLayeredPane(层级面板)
  18. Python处理HDF5文件:h5py库
  19. Java基础练习习题
  20. vista下3dsmax 9 DxDDS.bmi 未能初始化的修复方法

热门文章

  1. 谈一谈Java编程开发中的并发控制
  2. Java程序员常犯的几类错误
  3. 服务器的虚拟内存怎么调,服务器的虚拟内存怎么调才好
  4. python实现杨辉三角形博客园_Python实现杨辉三角
  5. linux挂载cifs磁盘_linux使用windows磁盘,挂载共享目录
  6. python的pypi安装_python pip及安装包安装
  7. java static 修饰变量吗_Java面试 - static 修饰的变量和方法有哪些特点?
  8. adb android源码分析,Android Adb 源码解析(base on Android 9.0)
  9. linux 嵌入式 快照_Linux 系统之Systemd
  10. python导入模块有几种方式、各有什么特点_Python导入模块的几种姿势