什么是容器应用
传统虚拟机是对硬件资源的虚拟化
容器的虚拟化层级比虚机要高一级,它是对操作系统的虚拟化。
容器应用就是把软件本身及依赖组件打包在一起组成的一个软件包。它可以在安装了容器引擎的系统上运行。
容器应用的组成方式为docker镜像。docker镜像可以分为多层,其最上层为可写,其它层为只读。如下为一个docker镜像例子:
容器应用与普通应用相比,它具有如下特点:
- 系统资源使用率高
由于容器不需要进行硬件虚拟以及运行完整操作系统等额外开销,容器对系统资源的利用率更高。
- 启动更快
容器应用运行于宿主内核,无需启动完整的操作系统,因此可以做到秒级、甚至毫秒级的启动时间。
- 运行环境始终保持如一
开发过程中一个常见的问题是环境一致性问题。容器应用提供了除内核外完整的运行时环境,确保了应用运行环境一致性。
- 迁移轻松
容器运行时确保了执行环境的一致性,因此应用的迁移更加容易。
- 维护和扩展轻松
容器引擎使用的分层存储镜像,使得应用重复部分的复用更为容易,也使得应用的维护更新更加简单,基于基础镜像进一步扩展镜像也变得非常简单。
对容器应用快速测试
测试流程如下所示:
Azure 容器实例是一种解决方案,它提供了托管无服务器方式容器应用的运行方案。它提供了运行容器的最简捷的方式,你不用管理虚机,也不用管理其它的服务环境。
下面我们看一下如何快速对一个容器应用进行快速的部署测试:
- 准备资源。
登录之后,我们首先创建一个资源组。
az group create --name acitest --location eastus
- 部署应用。
即把我们的应用放到容器仓库中去,然后开始部署。我们需要记下输出中的fqdn的内容:
az container create --resource-group acutest --name mycontainer --image mcr.microsoft.com/
azuredocs/aci-helloworld --dns-name-label aci-my-demo --ports 80
- 开始测试。
- 删除资源,结束测试。
az group delete --name acitest
常见问题
1. 我的测试应用需要访问内网资源,请问可以么?
答:Azure容器实例支持虚拟网络,可以访问内网资源。请参见:
https://docs.microsoft.com/zh...
2. Azure容器实例支持Windows容器么?
答:支持。Azure容器实例支持如下Windows Server 2016和Windows Server 2019。更多信息请参考:
https://docs.microsoft.com/zh...
3. Azure容器实例在中国区有么?
答:目前我们在东二区已经推出Azure容器实例。
4. Azure容器实例支持哪些容器注册表?
答:Azure容器实例支持docker hub, Azure Container Registry以及第三方的注册表。这些注册表必须能从互联网访问。
5. 我的测试环境比较费资源,可能要用数千个CPU核心,我可以用Azure容器实例进行测试么?
答:某些情况下是可以的,但需要您联系技术支持个案处理。 更多信息请参考:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。