必备10道Docker面试题(附答案)
2023-03-27 16:07:27
Docker是一个使用Go语言开发的开源应用容器引擎一定是大多数java程序员都知道Docker现在有多热,因为Docker让开发人员包装他们的应用程序,并依赖于可移植的容器,然后发布到任何流行的机器上。我想面试一下作为java工程师的朋友,Docker面试题这是必要的准备之一。以下是常规考试的整理Docker让我们一起学习面试题。
1、什么Docker?
答:Docker是一个容器平台,它以容器的形式包装您的应用程序及其所有依赖项,以确保您的应用程序在任何环境中无缝运行。
2、Docker和虚拟机有什么区别?
答:Docker不是虚拟化的方法。它依赖于其他基于容器或操作系统级虚拟化的工具的实际实现。为此,Docker最初使用LXC驱动程序,然后移动到libcontainer,现在重新命名为runc。Docker主要集中在应用程序容器中自动部署应用程序。应用程序容器旨在包装和运行单个服务,而系统容器则设计为虚拟机等多个操作过程。因此,Docker被视为容器化系统中的容器管理或应用程序部署工具。
3、Docker容器有多少种状态?
答:有四种状态:运行、暂停、重启和退出。
4、Dockerfile中最常见的指令是什么?
答:FROM:指定基本镜像;LABEL:功能是指定镜像标签;RUN:操作指定的命令;CMD:启动容器时运行的命令。
5、COPY和ADD命令在Dockerfile中有什么区别?
答:一般来说,虽然COPY的AD和COPY功能相似,但COPY是首选。
那是因为它比ADD更容易理解。COPY只支持将本地文件复制到容器中,而ADD具有一些不明显的功能(如局部TAR提取和远程URL支持)。因此,ADD的最佳用途是自动将本地TAR文件提取到镜像中,如ADD rootfs.tar.xz /。