资讯动态

一文速成!Docker面试题,帮你全部搞定!

发布时间:2026/8/14 8:19:06 来源:尧图企业网站定制
面试求职「面试试题小程序」 内容涵盖 测试基础、Linux操作系统、MySQL数据库、Web功能测试、接口测试、APPium移动端测试、Python知识、Selenium自动化测试相关、性能测试、性能测试、计算机网络知识、Jmeter、HR面试命中率杠杠的。大家刷起来…职场经验干货软件测试工程师简历上如何编写个人信息一周8个面试软件测试工程师简历上如何编写专业技能一周8个面试软件测试工程师简历上如何编写项目经验一周8个面试软件测试工程师简历上如何编写个人荣誉一周8个面试软件测试行情分享这些都不了解就别贸然冲了.软件测试面试重点搞清楚这些轻松拿到年薪30W软件测试面试刷题小程序免费使用永久使用关于Docker很多同学都听说过但是能讲清楚的就不多了。今天这篇文章我尽量用最直白的语言把Docker给大家说清楚。不搞大段代码不搞专业术语争取让没用过Docker的人看完也能有个清晰认知面试的时候能说出点东西来。一、Docker到底是什么我一直觉得讲Docker最好的比方就是外卖套餐。你想想你在上海某家餐厅点的红烧肉很好吃但是你想把这道菜搬到北京去做结果食材不一样、炉火不一样、厨师手法不一样做出来味道就变了。Docker解决的就是这个问题。它可以把你的软件连同它需要的所有东西一起打包成一个盒子不管把这个盒子搬到哪台服务器上打开来运行结果都是一样的。不会说在你电脑上跑得好好的到了测试服务器就各种报错。这个盒子就叫容器。那跟虚拟机有什么区别呢虚拟机相当于在你家里再盖一栋房子里面有独立的水电气、独立的地基啥都是新的资源消耗巨大启动也慢。Docker容器相当于在你家里多隔一个房间共用同一栋楼的水电气占用资源小启动快得多一台服务器可以同时跑几十个容器但虚拟机可能只能跑几台。面试被问到这道题就用这个逻辑答清晰有画面感。二、镜像和容器傻傻分不清楚面试必问镜像和容器有什么关系镜像你可以理解成一个模板或者说一个安装包。它是只读的里面装好了软件运行需要的所有东西但它本身不会运行。容器是把这个镜像运行起来之后的状态。就好比镜像是一个蛋糕的配方容器是按照这个配方烤出来的蛋糕。同一个配方可以烤出很多个蛋糕同一个镜像可以同时启动多个容器。每个容器互相独立一个容器里出了问题不影响其他容器。还有一点要注意容器本身是临时的容器关掉之后里面的数据默认就消失了。就像你在临时房间里放的东西房间拆了东西就没了。如果有数据需要保留就得额外做持久化处理这个后面会说。三、Dockerfile是什么Dockerfile是一个文本文件里面写着如何一步步构建出镜像的指令。打个比方Dockerfile就像一个装修施工图纸先铺地板再刷墙再装灯按照图纸一步步来最后装出来的房间就是镜像。面试不会让你手写Dockerfile但会问里面一些常见指令的含义下面几个要知道。FROM是第一行告诉Docker基于哪个基础环境来构建比如基于Python的环境或者基于某个Linux系统。RUN是在构建过程中执行命令比如安装依赖包这类操作。COPY是把你本地的文件复制进镜像里。WORKDIR是设置工作目录告诉容器启动后默认在哪个文件夹下执行命令。CMD和ENTRYPOINT都是容器启动后执行什么命令这两个区别是面试高频考点。简单说CMD写的命令容易被外部覆盖掉ENTRYPOINT写的命令基本不会被覆盖。实际上两个经常配合使用不需要死记知道区别就够了。四、Docker常用命令很多人觉得命令要死记硬背其实没必要。命令就那几类理解了用途自然就记住了。第一类是查看类。docker ps是查看当前正在运行的容器就像任务管理器一样能看到有哪些容器活着。docker ps -a是查看所有容器包括已经停掉的。docker images是查看本地有哪些镜像。第二类是操作容器。docker run是最常用的用来创建并启动一个容器。docker start和docker stop是启动和停止已有的容器。docker restart是重启容器容器卡了或者配置改了需要重启时用。docker rm是删除容器删之前要先停掉。第三类是进入容器和查日志。docker exec -it 容器名 /bin/bash是进入容器内部就像ssh进一台服务器一样进去之后可以执行命令查问题。docker logs 容器名是查看容器的日志输出测试排查问题最常用这个。第四类是镜像相关。docker pull是从仓库拉取镜像docker push是把本地镜像推送到仓库docker rmi是删除本地镜像。面试官不会让你背命令但会问你实际工作中怎么排查问题、怎么查日志这时候你能说出docker logs、docker exec这些说明你真用过不是纸上谈兵。五、数据持久化一定要理解这个概念前面说了容器关掉数据就没了那怎么保留数据第一种方式是数据卷英文叫Volume。Docker会在宿主机上专门开辟一块地方来存数据容器关掉了这块数据还在下次启动新容器还能继续用。第二种方式叫挂载就是直接把宿主机上某个文件夹和容器里某个文件夹绑定在一起两边同步。比如把你服务器上存配置文件的文件夹挂载到容器里容器里能直接读到这个配置你在服务器上改了配置文件容器里也立刻生效。测试同学搭测试环境的时候经常用第二种把测试数据或者配置文件挂进去非常方便。六、Docker Compose搭测试环境神器单个容器好理解但现实中一个测试环境往往需要好几个容器配合比如你测试的应用本身是一个容器它依赖的数据库是一个容器还有缓存又是一个容器。以前的做法是一个一个手动启动繁琐还容易出错。Docker Compose解决了这个问题你在一个配置文件里把所有服务都定义好一条命令全部启动一条命令全部关掉。对测试同学来说这个工具直接降低了搭环境的门槛。以前搭一套完整的测试环境可能要折腾半天用了Compose之后配置好就是几分钟的事而且每次搭出来的环境是一模一样的不会出现这台机器行那台机器不行的玄学问题。七、面试必备实际踩坑经历怎么答面试官很喜欢问你用Docker遇到过什么问题这个问题就是在检验你到底动手用过没有。第一个常见坑是镜像拉取慢或者失败。国内访问Docker官方镜像库速度很慢解决方法是配置国内的镜像加速地址比如阿里云、腾讯云都有提供配置上之后速度会快很多。第二个常见坑是容器启动了但是外面访问不到。这种情况要按顺序排查先看容器的端口有没有正确映射到宿主机再看服务器的防火墙有没有开放这个端口最后看云服务器控制台的安全组规则有没有放通。很多人上来就改安全组其实防火墙没开才是原因白忙活一场。第三个坑是容器重启后数据丢失因为忘记挂载数据卷。新手几乎人人都踩过这个养成部署前检查的习惯就好了。这三个坑说出来面试官会觉得你是真的用过不是光看视频背答案的。Docker这个东西说实话概念不复杂看完这篇文章你应该已经有了基本认知。但是光看不够最好能自己动手装一个搭个简单的环境跑一跑印象会完全不一样。云服务器最便宜的一年几十块花不了多少钱自己折腾一遍踩几个坑面试的时候那些答案才是真正属于你自己的。最后下方这份完整的软件测试视频教程已经整理上传完成需要的朋友们可以自行领取【保证100%免费】​​​

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价