0
点赞
收藏
分享

微信扫一扫

云计算(3)—— 容器应用

镜像删除

删除所有镜像

docker image rm -f 'docker image ls -q'

Docker 客户端

docker 客户端非常简单 ,我们可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项。

云计算(3)—— 容器应用_ubuntu

可以通过命令 docker command --help 更深入的了解指定的 Docker 命令使用方法。

例如我们要查看 docker stats 指令的具体使用方法:

云计算(3)—— 容器应用_ubuntu_02

获取镜像

如果我们本地没有 ubuntu 镜像,我们可以使用 docker pull 命令来载入 ubuntu 镜像:

$ docker pull ubuntu

启动容器

以下命令使用 ubuntu 镜像启动一个容器,参数为以命令行模式进入该容器:

$ docker run -it ubuntu /bin/bash

参数说明:

•-i: 交互式操作。•-t: 终端。•ubuntu: ubuntu 镜像。•/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。

解密Rancher

Rancher Labs创立于2014年9月,定位在为企业客户提供容器企业级落地的解决方案上面。2016年4月,Rancher Labs在全球已经拥有4000多家企业客户,并且获得B轮2000万美元融资。

Rancher Labs的创始人梁胜博士,曾经是Sun Microsystems的核心主任工程师,随后创立了cloud.com和Teros,后均被Citrix并购。梁胜继而担任Citrix的云平台CTO,直到2014年9月创立Rancher Labs。

在梁胜博士看来,虽然容器市场前景广阔,但目前容器也有开源产业的通病,需要自己DIY。实际上,容器在生产环境部署运行仍然十分困难,因为容器工具和技术栈的数量繁多,来自于不同的供应商,而Rancher抓住的商业机会就是简化容器的部署。

据介绍,Rancher目前已经具备全栈化一键部署应用、多种编排调度工具、多租户、多种基础架构的能力,可替换IaaS云平台,无论是AWS、微软Azure、谷歌、阿里云还是OpenStack、VMware。这就如同一款浏览器可以运行在iOS、安卓、Windows、OS X等不同操作系统中一样,让用户得到一致性的用户体验。

五大应用场景

据了解,目前容器在国内的典型应用场景可以归纳为5大类:

1、混合云及复杂数据中心;

2、多环境、多资源池的DevOps流水线;

3、基于Rancher的轻量级PaaS;

4、IT综合资产管理平台;

5、一键部署容器化应用到任意资源池中的任意集群环境。

测试实践

Docker搭建业务测试环境

事实上,公司提供了适配公司现有环境的容器化产品,主要是基于Docker和Kubernetes底层技术架构,这个也是主流的基础架构方案。  Docker就是将一个应用程序正常运行所需的一系列东西打包成一个镜像,用的时候,基于这个镜像启动一个容器实例,直接使用。实现过程:  在Dockerfile中构建一个docker镜像的基本指令,包含FROM(基础镜像)、WORKDIR(建立文件夹)、COPY(宿主机文件复制)、RUN(linux常用命令操作)、ENV(环境变量设置)这几个指令。这几个指令的组合能够生成一套稳定的javaweb镜像。文件写完之后,只需要docker build一下,就能够生成我们需要的javaweb镜像。我们可以将镜像上传到镜像仓库上,然后我们就可以在任何我们想要部署业务测试环境的系统上(包括本地机器),下载该镜像,并使用docker run命令生成容器,即可快速部署一套我们自己的测试环境(当然前提是部署的机器上需要安装docker)。

Docker在selenium自动化中的应用

Selenium Grid主要用于分布式自动化测试,就是一套Selenium 代码可在不同的环境上运行。Grid使用了hub-node(Master Slave)的概念,在这个概念中,测试只在一个机器上运行(hub),但是执行会在不同的机器(nodes)并行执行。刚好,Docker可快速的创建各种环境,从而使得selenium分布化测试变得更为快捷可靠。实现过程:那么,一套脚本如何同时跑多个浏览器,做兼容测试?  

2.1>先后下载hub及node镜像   docker pull selenium/hub   docker pull selenium/node-chrome   

2.2>启动hub容器   docker run -d –p 32768:4444 --name selenium-hub selenium/hub   注:Selenium/hub 容器的端口号为4444,对centos映射的端口为32768   

2.3>启动分支node chrome 容器   docker run -d --link selenium-hub:hub selenium/node-chrome   注:–link 通过 link 关联 selenium-hub 容器,并为其设置了别名hub   

2.4>可以在本地机器上执行脚本

Docker与CI/CD

Docker可以让你非常容易和方便地以“容器化”的方式去部署应用,它就像集装箱一样,打包了所有依赖,再在其他服务器上部署很容易,不至于换服务器后发现各种配置文件散落一地,这样就解决了编译时依赖和运行时依赖的问题。Docker在CI/CD上的应用使得整个过程更进一步自动化,也使整个过程镜像化,达成一次构建,多次部署的愿景。  

CI流程:

1.开发者向gitlab上提交代码 

2.gitlab通过webhook通知jenkins有更新 

3.jenkins从gitlab上下拉最新代码 

4.jenkins对代码进行编译、构建新的集成镜像、最后将镜像推送到docker镜像仓库上。  

CD流程:

1.在镜像仓库上拉取最新集成镜像 

2.然后启动容器。

------------------- 消息中间件Rabbitmq ----------------------------------

消息中间件Rabbitmq(01)

消息中间件Rabbitmq(02)

消息中间件Rabbitmq(03)

消息中间件Rabbitmq(04)

消息中间件Rabbitmq(05)

消息中间件Rabbitmq(06)

消息中间件Rabbitmq(07)

------------------- ---------- 云计算  -------------------------------------

云计算(1)——docker的前世今生

云计算(2)—— 体系结构



云计算(3)—— 容器应用_ubuntu_03

举报

相关推荐

0 条评论