1、什么是容器?(3分)容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。2、容器虚拟化和传统虚拟化的区别是什么?(4分)容器虚拟化:启动一般是秒级;仅仅kernel所支持的os,系统支持量单机支持上千个容器,磁盘的使用一般为MB性能接近原生传统虚拟化:启动一般是分钟级,支持linux,windows,mac操作系统,系统支持量一般为几十个磁盘使用一般为GB性能弱3、Namespace在容器里功能是什么?(3分)Namespace是命名空间隔离,主要就是将用户空间通过namespace技术隔离开,容器内的进程互不影响。共用一个内核4、Cgroup的功能是什么的?(3分)资源限制优先级分配资源统计任务控制5、Docker能不能在32位的系统里运行?(3分)不能6、Docker的核心组件有哪些?(3分)镜像,容器,仓库7、我们所安装的docker是哪个版本的?写不全不给分。(3分)18.03.1-ce版本8、如何搜索docker镜像nginx?(3分)Dockersearchnginx9、如何下载centos镜像?(3分)Dockerpullcentos10、运行一个zabbix的镜像,并打开一个终端。(3分)Dockerrun-itzabbix/bin/bash11、让上个题的容器不停止,并后台运行。(3分)先按ctrl+p再按ctrl+q12、删除现在所有的镜像。(3分)Dockerrmi-f‘dockerimages-q-a’13、查看上一个容器的状态。(3分)Dockerstats`dockerps-l-q`14、查看容器的进程。(3分)Dockertop容器id15、查看容器的统计信息。(3分)Dockerstats容器id16、查看容器abc的详细信息。(3分)Dockerinspectabc17、使用dockerbuild命令有几种方法构建镜像?(3分)两种1、通过源代码路径的方式2、通过标准输入流的方式18、运行一个容器test2去使用容器test1的数据卷/date(镜像统一是nginx)。(3分)Dockerrun-it--nametest1-v/date:/datenginx/bin/bashDockerrun-it--volumes-fromtest1--nametest2nginx/bin/bash19、docker的存储驱动程序有哪些?(3分)AUES、Btrfs、Devicemapper、OverlayFS、ZFS、VFS20、overlay的文件系统,读取一个文件,文件不在容器里,但存在镜像里,它的工作过程是什么?(3分)文件不存在于容器(upperdir)中。overlay/overlay2驱动程序执行一个copy_up操作将文件从镜像(复制lowerdir)到所述容器(upperdir)。容器然后将更改写入容器层中的文件的新副本21、overlay文件系统里有个目录是upperdir,它里面装的是什么?(3分)Upperdir是容器的可写数据层,里面装的是对容器的更改内容22、overlay文件系统里有个目录是lowerdir,它里面装的是什么?(3分)里面装的是镜像23、docker里有三种方式把数据从宿主机挂载到容器,分别是volmues,bindmounts,tmpfsvolumes,有什么区别?(3分)Volumes方式下:容器内的数据被存放到宿主机(linux)一个特定的目录下(/var/lib/docker/volumes/)。这个目录只有Docker可以管理,其他进程不能修改。如果想持久保存容器的应用数据,Volumes是Docker推荐的挂载方式。Bindmounts方式下:容器内的数据被存放到宿主机文件系统的任意位置,甚至存放到一些重要的系统目录或文件中。除了Docker之外的进程也可以任意对他们进行修改;tmpfs方式下:容器的数据只会存放到宿主机的内存中,不会被写到宿主机的文件系统中,因此不能持久保存容器的应用数据。24、--net选项后面可以跟哪些参数?(4分)None、host、bridge、overlay、macvlan25、现在项目需要多个容器之间疯狂交流,需要使用哪个网络?(3分)Dockeroverlay网络26、打开容器test2去链接test1容器,并映射宿主机的80端口到容器的5000端口。(3分)Dockerrun-it-v80:5000–nametest2--network=container:test1centos/bin/bash27、什么是Orchestration?(3分)编排(Orchestration),描述了自动配置、协作和管理服务的过程。28、Orchestration的分类有哪些?(3分)DockerCompose,DockerMachine,DockerSwarm29、其中compose使用的步骤是什么?(3分)使用Compose仅需要三步:1、使用dockerfile定义你的应用依赖的镜像;2、使用docker-compose.yml定义你的应用具有的服务;3、通过docker-composeup命令创建并运行应用;30、swarm的调度模块的第一阶段,过滤器有几种?(3分)5种Constraints,约束过滤器Affnity,亲和性过滤器Dependency,依赖过滤器Healthfilter,会根据节点状态进行过滤Portsfilter,会根据端口的使用情况过滤31、k8s的全称是什么?在古希腊话中是什么意思?(4分)全称是Kubernetes,在古希腊话中是舵手的意思32、编写dockerfile,实现功能:开启容器就能查看/目录,并且能复写查看/mnt目录。镜像自选(4分)#VimdockerfileFROMcentosRUNls/CMD[“ls”,”/mnt”]