老男孩教育专注IT教育10余年,只培养IT技术精英

全国免费咨询电话(渠道合作):400-609-2893

2022最新Docker常见面试题汇总!老男孩Linux培训班

老男孩IT教育

常见问题

2022年8月26日 09:42

什么是Docker?它是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源,它是在Linux容器里运行应用的开源工具,是一种轻量级的虚拟机,本篇文章总结了一些Docker常见面试题,请看下文:

       什么是Docker?它是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源,它是在Linux容器里运行应用的开源工具,是一种轻量级的虚拟机,本篇文章总结了一些Docker常见面试题,请看下文:

Linux面试题

       Docker与虚拟机的区别是什么?

       虚拟机通过添加Hypervisor层(虚拟化中间层),虚拟出网卡、内存、CPU等虚拟硬件,再在其上建立虚拟机,每个虚拟机都有自己的系统内核。而Docker容器则是通过隔离(namesapce)的方式,将文件系统、进程、设备、网络等资源进行隔离,再对权限、CPU资源等进行控制(cgroup),最终让容器之间互不影响,容器无法影响宿主机。

       与虚拟机相比,容器资源损耗要少。同样的宿主机下,能够建立容器的数量要比虚拟机多

       但是,虚拟机的安全性要比容器稍好,而docker容器与宿主机共享内核、文件系统等资源,更有可能对其他容器、宿主机产生影响。

       Docker的三大核心是什么?

       镜像:Docker的镜像是创建容器的基础,类似虚拟机的快照,可以理解为一个面向Docker容器引擎的只读模板。通过镜像启动一个容器,一个镜像是一个可执行的包,其中包括运行应用程序所需要的所有内容包含代码,运行时间,库、环境变量、和配置文件。

       容器:Docker的容器是从镜像创建的运行实例,它可以被启动、停止和删除。所创建的每一个容器都是相互隔离、互不可见,以保证平台的安全性。可以把容器看做是一个简易版的linux环境(包括root用户权限、镜像空间、用户空间和网络空间等)和运行在其中的应用程序。

       仓库:仓库注册服务器上往往存放着多个仓库,每个仓库中包含了多个镜像,每个镜像有不同标签(tag)。

       如何修改Docker的存储位置?

       默认情况下Docker的存放位置为:/var/lib/docker,可以通过命令查看具体位置:docker info | grep “Docker Root Dir”

       修改到其它目录:首先停掉Docker服务,systemctl stop docker,然后移动整个/var/lib/docker 目录到目的路径,mkdir -p /root/data/docker、mv /var/lib/docker /root/data/docker、ln -s /root/data/docker /var/lib/docker --快捷方式

       Docker在后台的标准运行过程是什么?

       当利用docker run来创建容器时, Docker在后台的标准运行过程是:

  • 检查本地是否存在指定的镜像。当镜像不存在时,会从公有仓库下载;
  • 利用镜像创建并启动一个容器;
  • 分配一个文件系统给容器,在只读的镜像层外面挂载一层可读写层;
  • 从宿主主机配置的网桥接口中桥接一个虚拟机接口到容器中;
  • 分配一个地址池中的 IP 地址给容器;
  • 执行用户指定的应用程序,执行完毕后容器被终止运行;

       什么是Docker的数据卷?

       数据卷是一个供容器使用的特殊目录,位于容器中。可将宿主机的目录挂载到数据卷上,对数据卷的修改操作立刻可见,并且更新数据不会影响镜像,从而实现数据在宿主机与容器之间的迁移。数据卷的使用类似于Linux下对目录进行的mount操作。

       如果需要在容器之间共享一些数据,最简单的方法就是使用数据卷容器。数据卷容器是一个普通的容器,专门提供数据卷给其他容器挂载使用。

       容器互联是通过容器的名称在容器间建立一条专门的网络通信隧道。简单点说,就是会在源容器和接收容器之间建立一条隧道,接收容器可以看到源容器指定的信息。

       老男孩教育Linux运维云计算课程汇集了虚拟化、云计算、安全攻防、Python开发、SRE等技术,课堂效率高、内容丰富全面,由浅入深,循序渐进,帮助学员稳扎稳打,夯实基础,在有限的时间内帮助学员高效提升,成为符合企业需求的技术型人才。

    推荐阅读:

    常见堡垒机的主要功能分为哪几个模块?LinuxSRE工程师培训

    Linux运维工程师前景怎么样?老男孩Linux运维培训班

    超全的Linux云计算运维面试题!老男孩Linux培训班

本文经授权发布,不代表老男孩教育立场。如若转载请联系原作者。