代码编织梦想

常规题:

1. Docker 和虚拟机有啥不同?

答:Docker 是轻量级的沙盒,在其中运行的只是应用,虚拟机里面还有额外的系统。

2. Docker 安全么?

答:Docker 利用了 Linux 内核中很多安全特性来保证不同容器之间的隔离,并且通过
签名机制来对镜像进行验证。大量生产环境的部署证明,Docker 虽然隔离性无法与虚
拟机相比,但仍然具有极高的安全性。

3. 如何清理后台停止的容器?

答:可以使用 sudo docker rm $sudo( docker ps -a -q) 命令。

4. 如何查看镜像支持的环境变量?

答:可以使用 docker run IMAGE env 命令。

5. 当启动容器的时候提示:exec format error?如何解决问题

答:检查启动命令是否有可执行权限,进入容器手工运行脚本进行排查。

6. 本地的镜像文件都存放在哪里?

答:与 Docker 相关的本地资源都存放在/var/lib/docker/目录下,其中 container 目录
存放容器信息,graph 目录存放镜像信息,aufs 目录下存放具体的内容文件。

7. 如何退出一个镜像的 bash,而不终止它?

答:按 Ctrl + P + Q。

8. 退出容器时候自动删除?

答:使用 –rm 选项,例如 sudo docker run –rm -it ubuntu

9. 怎么快速查看本地的镜像和容器?

答:可以通过 docker images 来快速查看本地镜像;通过 docker ps -a 快速查看本地容器。

镜像相关:

1. 如何批量清理临时镜像文件?

答:可以使用 sudo docker rmi $(sudo docker images -q -f danging=true)命令

2. 如何查看镜像支持的环境变量?

答:使用 sudo docker run IMAGE env

3. 本地的镜像文件都存放在哪里

答:于 Docker 相关的本地资源存放在/var/lib/docker/目录下,其中 container 目录存放
容器信息,graph 目录存放镜像信息,aufs 目录下存放具体的镜像底层文件。

4. 构建 Docker 镜像应该遵循哪些原则?

答:整体远侧上,尽量保持镜像功能的明确和内容的精简,要点包括:
  • 尽量选取满足需求但较小的基础系统镜像,建议选择 debian:wheezy 镜像,仅有86MB 大小
  • 清理编译生成文件、安装包的缓存等临时文件
  • 安装各个软件时候要指定准确的版本号,并避免引入不需要的依赖
  • 从安全的角度考虑,应用尽量使用系统的库和依赖
  • 使用 Dockerfile 创建镜像时候要添加.dockerignore 文件或使用干净的工作目录

容器相关:

1. 容器退出后,通过 docker ps 命令查看不到,数据会丢失么?

2. 如何停止所有正在运行的容器?

3. 如何清理批量后台停止的容器?

4. 如何临时退出一个正在交互的容器的终端,而不终止它?

5. 很多应用容器都是默认后台运行的,怎么查看它们的输出和日志信息?

6. 使用 docker port 命令映射容器的端口时,系统报错 Error: No public port ‘80’

published for …,是什么意思?

7. 可以在一个容器中同时运行多个应用进程吗?

8. 如何控制容器占用系统资源(CPU,内存)的份额?

9. 在主机和容器上部署应用程序有什么区别?

10. 什么是容器编排?

11. 容器编排有什么需要?

仓库相关:

1. 仓库(Repository)、注册服务器(Registry)、注册索引(Index)有何关系?

2. 从非官方仓库(如:http://dl.dockerpool.com)下载镜像的时候,有时候会提示“Error:

Invaild registry endpoint https://dl.docker.com:5000/v1/…”?

配置相关

1. Docker 的配置文件放在那里。如何修改配置?

2. 如何更改 Docker 的默认存储设置?

Docker 与虚拟化:

1. Docker 与 LXC(Linux Container)有何不同?

2. Docker 与 Vagrant 有何不同?

3. 开发环境中 Docker 与 Vagrant 该如何选择?

Other FAQ:

1. Docker 能在非 Linux 平台(Windows+MacOS)上运行吗?

2. 如何将一台宿主机的 docker 环境迁移到另外一台宿主机?

3. Docker 容器创建后,删除了/var/run/netns 目录下的网络名字空间文件,可以手动恢复它:

4. 什么是 Google Container Engine?

学习更多编程知识与技巧,关注与私信博主(666)!

热爱学习和渴望进阶的小伙伴,各种学习路线、笔记、面试题,免费分享!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_71742635/article/details/128018104

云原生训练营_DevOps & CI_CD常见面试题汇总-爱代码爱编程

DevOps 术语和定义 1. 什么是 DevOps 答:用最简单的术语来说,DevOps是产品开发过程中开发(Dev)和运营(Ops) 团队之间的灰色区域。DevOps 是一种在产品开发周期中强调沟通,集成和协作的 文化。因此,它消除了软件开发团队和运营团队之间的孤岛,使他们能够快速

2022年最新Spring Cloud常见面试题总结-爱代码爱编程

为什么需要学习Spring Cloud 不论是商业应用还是用户应用,在业务初期都很简单,我们通常会把它实现为单体结构的应用。但是,随着业务逐渐发展,产品思想会变得越来越复杂,单体结构的应用也会越来越复杂。这就会给应用带来如下的几个问题: 代码结构混乱:业务复杂,导致代码量很大,管理会越来越困难。同时,这也会给业务的快速迭代带来巨大挑战;开发效率

2022年Java开发者常见面试题,springcloud高频面试题总结-爱代码爱编程

前言 Spring框架自2002年诞生以来一直备受开发者青睐,它包括SpringMVC、SpringBoot、Spring Cloud、Spring Cloud Dataflow等解决方案。有人亲切的称之为:Spring 全家桶。 很多研发人员把spring看作心目中最好的java项目,没有之一。所以这是重点也是难点,工作中必须会,面试时肯定考。那么,

2022年java秋招面试必看的 | 微服务面试题_麒麟改bug的博客-爱代码爱编程

前言 你有了解过Java微服务吗?知道什么是微服务架构吗? 微服务架构是一种架构风格和架构思想, 在传统软件应用架构的基础上,将系统业务按照功能拆分为更细的服务。拆分的每一个服务都是一个独立的应用,这些应用对外提供公共的

2022年java面试题整理归纳(持续更新)_程序员追风的博客-爱代码爱编程

开始的碎碎念 本文大多是各大企业的topN题目,针对java中高级开发,本文会持续收集更新内容,如果大家有优质的Java面试题,也欢迎大家来投稿。 特意整理出这个分类的目录,方便大家平时复习和收藏哈。希望正在准备面试的朋

2022java最新大厂面试真题「附答案合集」_m_tsing的博客-爱代码爱编程

前言 面试题主要是针对1-5年左右的Java开发程序员提升的,不管是传统行业还是互联网行业,掌握这些技术基本都能拿到一个不错的薪资,希望对大家有所帮助。 一、大厂面试资料 1、哔哩哔哩、快手、美团点评、拼多多、腾讯、网易、小米面试真题 1、vivo2021春季招聘在线编程考试 2、哔哩哔哩招聘后端笔试卷(一) 3、快手招聘秋招笔试--工

秒杀面试官,2022年最新spring cloud常见面试题总结_啊码的博客-爱代码爱编程

又逢“金九银十”,年轻的毕业生们满怀希望与忐忑,去寻找、竞争一个工作机会。已经在职的开发同学,也想通过社会招聘或者内推的时机争取到更好的待遇、更大的平台。 然而,面试人群众多,技术市场却相对冷淡,面试的同学们不得不面临着

2022年最新最全软件测试面试题大全-爱代码爱编程

一、面试基础题 简述测试流程: 1、阅读相关技术文档(如产品PRD、UI设计、产品流程图等)。 2、参加需求评审会议。 3、根据最终确定的需求文档编写测试计划。 4、编写测试用例(等价类划分法、边界值分析法等)。 5、用例评审(主要参与人员:开发、测试、产品、测试leader)。 6、开发提交代码至SVN或者GIT ,配管搭建测试环境。 7

最新 2023 年云原生kubernetes 高级面试题大全(持续更新中)_云原生面试题-爱代码爱编程

前言 本篇模拟面试官提问的各种docker,k8s问题,意在提高面试通过率,欢迎在评论区探讨,同步进步。 目录 题1:Kubernetes Service 都有哪些类型? 题2:K8s 标签与标签选择器的作用是什么?  题3:Kubernetes 如何实现集群管理? 题4:如何解释 kubernetes 架构组件之间的不同 ? 题5:Kube

2022必撸八股!198道k8s/docker/devops面试真题大盘点+答案详解-爱代码爱编程

前两天跟一个大佬交流,他直言,K8s就是未来的Linux操作系统。 操作系统一般有存储、网络、进程管理、进程调度、系统调用API等功能。 类似的,K8s也提供了云原生下的存储、调度、网络、声明式API等功能,还提供了很多运维相关的能力,如备份、扩缩容、负载均衡等。 可以说,K8s在云原生环境下,已经承担了一个操作系统的绝大部分功能!