发布信息

经常出现疑问 Docker 类面试题 (经常出现疑问怎么回事)

     2024-10-22 14:29:18     539

本文目录导航:

Docker 类面试题(经常出现疑问)

Docker 经常出现疑问与解答

镜像关系

1. 清算暂时镜像文件:经常使用 sudo docker rmi $(sudo docker images -q -f dangling=true)。

2. 检查镜像环境变量:口头 sudo docker run IMAGE env。

3. 镜像文件位置:本地镜像存储在 /var/lib/docker/,蕴含container, graph和aufs等子目录。

构建准则

构建镜像时,坚持性能明白和内容精简,防止不用要的复杂性。

容器治理

1. 分开后数据不会失落:容器分开后经常使用 docker ps -a 检查,容器可重启,删除容器才会肃清数据。

2. 中止一切运转容器:运转 docker kill $(sudo docker ps -q)。

3. 清算后盾中止容器:经常使用 docker rm $(sudo docker ps -a -q)。

4. 暂时分开终端:按 Ctrl+p 和 Ctrl+q,防止经常使用 Ctrl+c。

日志检查和端口映射

5. 检查运行容器日志:经过 docker logs,后跟容器ID或称号。

6. 映射端口失误:确保Dockerfile正确指定EXPOSE,启动时启用PublishAllport。

容器运转

7. 同一容器运转多个进程:不倡导,思索经常使用进程治理工具如supervisord。

8. 资源份额控制:经常使用 -c|-–cpu-shares 调整CPU份额,-m|-–memory 调整内存大小。

仓库与注册

1. 仓库、注册主机与索引:仓库是镜像汇合,注册主机寄存镜像,索引治理用户权限和搜查。

2. 非官网仓库下载疑问:减少信赖,如 DOCKER_OPTS=”--insecure-registry :5000”,重启服务。

性能与迁徙

1. Docker性能文件位置:Ubuntu在 /etc/default/docker,CentOS在 /etc/sysconfig/docker。

2. 修正存储设置:更改自动位置,如经常使用软链接。

与虚构化对比

1. Docker与LXC:Docker在容器技术上做了改良,例如性能优化。

2. Docker与Vagrant:Vagrant是虚构机治理环境,Docker轻量级,适宜极速开发。

选用与迁徙

开发环境:Docker轻量,Vagrant在资源消耗上较大。

3. 移植Docker环境:中止服务,复制存储文件,调整新宿主机性能。

其余

1. 非Linux平台支持:Docker可运转。

2. 容器网络命名空间:删除后可手动复原。

docker面试题

Docker 是一种盛行的开源软件平台,可简化创立、治理、运转和散发运行程序的环节。

它经常使用容器来打包运行程序及其依赖项。

用 Docker 来简化其运行程序开发上班流程。

Docker 面试问答 1. 什么是 Docker 容器? Docker 容器在运行程序层创立形象并将运行程序及其一切依赖项打包在一同。

这使咱们能够极速牢靠地部署运行程序。

容器不须要咱们装置不同的操作系统。

相反,它们经常使用底层系统的 CPU 和内存来口头义务。

这象征着任何容器化运行程序都可以在任何平台上运转,而不论底层操作系统如何。

咱们也可以将容器视为 Docker 镜像的运转时实例。

2.形容 Docker 容器的生命周期。

Docker 容器阅历以下阶段: 创立容器 运转容器 暂停容器(可选) 敞开暂停容器(可选) 启动容器 中止容器 重启容器 杀死容器 销毁容器 3. 如何从 Docker 镜像创立 Docker 容器? 为了从镜像创立容器,咱们从 Docker 存储库中提取咱们想要的镜像并创立一个容器。

咱们可以经常使用以下命令: docker run -it -d 4. Docker Compose 可以经常使用 JSON 替代 YAML 吗? 是的,咱们可以对Docker Compose文件经常使用 JSON 文件而不是YAML $ docker-compose -f up 5. 什么是Docker Swarm? Docker Swarm 是一个容器编排工具,它准许咱们跨不同主机治理多个容器。

经常使用 Swarm,咱们可以将多个 Docker 主机变成单个主机,以便于监控和治理。

6. 假设你想经常使用一个基础镜像并对其启动修正,你怎样做? 咱们可以经常使用以下 Docker 命令将图像从 Docker Hub 拉到咱们的本地系统上: docker pull 7. 如何启动、中止和中断容器? 要启动 Docker 容器,请经常使用以下命令: docker start 要中止 Docker 容器,请经常使用以下命令: docker stop 要中断 Docker 容器,请经常使用以下命令: docker kill 8. 什么是 DockerFile? Dockerfile 是一个文本文件,其中蕴含咱们须要运转以构建 Docker 映像的一切命令。

Docker 经常使用 Dockerfile 中的指令智能构建镜像。

咱们可以docker build用来创立按顺序口头多个命令行指令的智能构建。

9. 解释 Docker 组件。

三个架构组件包括 Docker 客户端、主机和注册表。

Docker 客户端:该组件口头构建和运转操作以与 Docker 主机通讯。

Docker 主机:该组件蕴含 Docker 守护程序、Docker 镜像和 Docker 容器。

守护进程建设到 Docker Registry 的衔接。

Docker Registry:该组件存储 Docker 镜像。

它可以是公共注册表,例如 Docker Hub 或 Docker Cloud,也可以是私有注册表。

10. 虚构化和容器化有什么区别? 虚构化 虚构化协助咱们在单个物理主机上运转和托管多个操作系统。

在虚构化中,治理程序为客户操作系统提供了一个虚构机。

VM 构成了配件层的形象,因此主机上的每个 VM 都可以充任物理机。

容器化 容器化为咱们提供了一个独立的环境来运转咱们的运行程序。

咱们可以在单个主机或 VM 上经常使用相反的操作系统部署多个运行程序。

容器构成了运行层的形象,所以每个容器代表一个不同的运行。

11. 治理程序的性能是什么? 治理程序或虚构机监督器是协助咱们创立和运转虚构机的软件。

它使咱们能够经常使用单个主机来支持多个来宾虚构机。

它经过划分主机的系统资源并将它们调配给已装置的来宾环境来成功这一点。

可以在单个主机操作系统上装置多个操作系统。

有两种类型的治理程序: Native:本机治理程序或裸机治理程序,间接在底层主机系统上运转。

它使咱们可以间接访问主机系统的配件,并且不须要基本主机操作系统。

托管:托管治理程序经常使用底层主机操作系统。

12.如何构建Dockerfile? 为了经常使用咱们概述的规范创立映像,咱们须要构建一个 Dockerfile。

要构建 Dockerfile,咱们可以经常使用以下docker build命令: $ docker build 13. 经常使用什么命令将新镜像推送到 Docker Registry? 要将新镜像推送到 Docker Registry,咱们可以经常使用以下docker push命令: $ docker push myorg/img 14.什么是Docker引擎? Docker Engine 是一种开源容器化技术,咱们可以经常使用它来构建和容器化咱们的运行程序。

Docker Engine 由以下组件支持: Docker 引擎 REST API Docker 命令行界面 (CLI) Docker 守护进程 15. 如何访问正在运转的容器? 要访问正在运转的容器,咱们可以经常使用以下命令: $ docker exec -it bash 16.如何列出一切正在运转的容器? 要列出一切正在运转的容器,咱们可以经常使用以下命令: $ docker ps 运转在哪些平台上? Docker 在以下 Linux 发行版上运转: CentOS 6+ Gentoo ArchLinux CRUX 3.0+ openSUSE 12.3+ RHEL 6.5+ Fedora 19/20+ Ubuntu 12.04、13.04 Docker 还可以经过以下云服务在消费中经常使用: 微软Azure 谷歌计算引擎 亚马逊 AWS EC2 亚马逊 AWS ECS 机架空间 揭示:咱们一直倡导您在面试之行启动一些公司钻研。

要为这个特定疑问做预备,请了解公司如何经常使用 Docker 并在您的答案中蕴含他们经常使用的平台。

18. 什么是Docker对象标签? Docker 对象标签是存储为字符串的键值对。

它们使咱们能够将元数据减少到 Docker 对象,例如容器、网络、本地守护进程、图像、Swarm 节点和服务。

19. 经常使用Docker Compose时如何保障容器1先于容器2运转? Docker Compose 在继续下一个容器之前不会期待容器预备就绪。

为了控制咱们的口头顺序,咱们可以经常使用“取决于”条件,depends_on。

这是在 文件中经常使用的示例: version: 2.4 services: backend: build: . depends_on: - db db: image: postgres该docker-compose up命令将依照咱们指定的依赖顺序启动和运转服务。

create命令有什么作用? 该docker create命令在指定映像上创立可写容器层,并预备该映像以运转指定命令。

一个半小时的会议面试

文/侯柏 下午两点,经常使用腾讯会议,开局了一个面试。

没想到这个面试继续了1个半小时。

而且,面试的很不理想。

面试开局,问了我接口智能化测试,很细的一些上班内容,怎样做的,什么框架,验证点是什么。

起初问UI智能化测试,也很细,selenium webdriver的原理和口头流程,等等。

又接着谈到矫捷形式下怎样做测试的环节。

又问了一些基础常识,比如测试方法,测试切实。

我犯了一个失误,当被问python里怎样注释?我居然回到‘’和“”,“”“”“”来注释。

最后的“”“”“”是对的,可是‘’和“”是用来申明字符串的,这么基础的疑问,我居然回答错了。

或者面试官会以为我是在融会贯串的常识吧!可,理想不是这样的。

我感冒2天刚好。

当天上午还是头晕的。

当思索这个疑问的时刻,我脑子里第一个想到“”“”“”,居然把‘’和“”一同说了进去,真是愚昧的脑子。

还问了python列表和元祖的区别。

我回答的也不对。

由于列表,元祖,汇合,不去特地背记的话,很容易搞混。

接着,又问了一些linux很基础的命令,有一些我回答不过去。

比如vim的强迫分开,我只记得保留分开。

就这一点,她就知道我没有太多的Linux的阅历了。

起初又问了docker的基础命令,由于我刚预备和练习了,我回答的还好。

最后,我问了她疑问。

她们的测试环境都是docker和linux用命令部署进去,在基于测试环境做接口测试和UI测试。

假设他们这次招接口测试和UI测试,我觉得我宿愿挺大。

假设她们比拟器重linux,那我就没戏了。

总体上去,我觉得这是个小姑娘,她对接口和UI智能化不是很相熟。

问的一些常识都是很基础的,反倒让我很难回答。

我已不抱任何希冀了。

当天继续投简历吧!话说,有些公司招聘挑选简历真是慢啊!一周都不见有回音的! 找上班,找好友,都是机缘呀! 2020.11.03嘉定

相关内容 查看全部