TUhjnbcbe - 2021/6/25 16:04:00
容器在软件开发、测试和部署环节应用的越来越广泛,那么测试人员应该如何掌握容器技术呢?应该掌握哪些基本的容器操作呢?本文通过容器化一个PythonWeb应用,来快速掌握Docker容器和镜像的基本操作。容器技术中两个基本的概念是容器和镜像。可以通过一个类比来理解,容器就是进程,镜像就是程序。程序运行起来就是进程,镜像运行起来就是容器。程序要想能运行起来,除了有我们自己编写的业务代码还要有依赖,还要借助于操作系统,把代码、依赖和操作系统打包在一起就是镜像,镜像中包含程序运行起来的所有要素,因此镜像可以“BuildOnce,RunAnywhere”,能够保证一致性。这是容器技术带给我们的非常大的益处。容器是镜像的动态表现,本质是一个的进程,镜像启动成为进程时,Docker引擎借助LinuxNamespace技术修改了应用进程看待操作系统的“视图”,只能“看到”某些指定的内容,并自以为自己是PID=1的1号进程。Docker引擎还利用LinuxCgroups技术对容器进程能够使用的系统资源,比如CPU、内存等进行了限制。因此,容器就是被Docker引擎加了很多限制的进程。本文不详细介绍容器和镜像底层原理的更多内容,将聚焦在软件测试工作中常用的对容器和镜像的基础操作。要想执行本文里面的Docker命令,前提是有一台安装了Docker的MacOS或者Linux操作系统的机器。安装方法请参考: