docker面试题(4)

  1. Docker与Vagrant有何不同

    复制代码
    两者的定位完全不同
    Vagrant类似于Boot2Docker(一款运行Docker的最小内核),是一套虚拟机的管理环境,Vagrant可
    以在多种系统上和虚拟机软件中运行,可以在Windows、Mac等非Linux平台上为Docker支持,自身具
    有较好的包装性和移植性。原生Docker自身只能运行在Linux平台上,但启动和运行的性能比虚拟机要
    快,往往更适合快速开发和部署应用的场景。
  2. 开发环境中的Docker与Vagrant该如何选择

    复制代码
    Docker不是虚拟机,而是进程隔离,对于资源的消耗很少,单一开发环境下Vagrant是虚拟机上的封
    装,虚拟机本身会消耗资源.
  3. 如何将一台宿主机的docker环境迁移到另外一个宿主机

    复制代码
    停止docker服务,将整个docker存储文件复制到另外一太宿主机上,然后调整另外一台宿主机的配置即
    可。
  4. Docker容器创建后,删除了/var/run/.netns目录下的网络名字空间文件,可以手动恢复它

    复制代码
    查看容器进程ID,比如1234
    到proc目录下,把对应的网络名字空间文字链接到/var/run/netns,然后通过正常的系统命令查看操作
    容器的名字空间
  5. 什么是 Docker镜像

    复制代码
    Docker镜像是Docker容器的源代码。换句话说,Docker镜像用于创建容器。使用build命令创建镜
    像,并且在使用run启动时它们将生成容器。镜像存储在Docker注册表中,registry.hub.docker.com因
    为它们可能变得非常大,镜像被设计为由其他镜像层组成,允许在通过网络传输镜像时发送最少量的数
    据
  6. 解释基本的Docker使用工作流程是怎样的

    复制代码
    (1)从Dockerfile开始,Dockerfile是镜像的源代码;(2)创建Dockerfile后,可以构建它以创建
    容器的镜像。图像只是"源代码"的"编译版本",即Dockerfile;(3)获得容器的镜像后,应使用注册表
    重新分发容器。注册表就像一个git存储库,可以推送和拉取镜像;接下来,可以使用该图像来运行容
    器。在许多方面,正在运行的容器与虚拟机(但没有虚拟机管理程序)非常相似。
  7. 什么是docker-compose

    复制代码
    docker-compose就是一个编排同时管理多个容器的工具,与它配对使用的是一个
    docker-compose.yaml文件,docker-compose命令必须在一个包含docker-compose.yaml文件目录下
    才能使用。且当下docker-compose命令只能管理当前目录docker-compose文件中所涉及的容器,安装
    在机器上的其他容器无法干扰。docker-compose的大部分命令基本和docker的命令重合,他们唯一的
    区别是docker命令能管理机器上所有的容器和镜像文件,而docker-compose只能管理当前dockercompose文件所涉及的容器。
  8. Docker镜像联合文件系统

    复制代码
    UnionFS(联合文件系统):Union文件系统(UnionFS)是一种分成,轻量级并且高性能的文件系统,
    他支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系
    统下。Union文件系统的Docker镜像可以通过分层来进行继承,基于基础镜像,可以制作各种具体的应
    用镜像。特性:一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把
    各层文件系统进行叠加起来,这样最终的文件系统会包含所有底层的文件和目录。
  9. 什么类型的应用程序无状态或有状态适合Docker容器

    复制代码
    最好为Docker Container创建无状态应用程序。我们可以从应用程序中创建一个容器,并从应用程
    序中取出可配置的状态参数。现在我们可以在生产环境和具有不同参数的QA环境中运行相同的容器。这
    有助于在不同场景中重用相同的镜像。另外,无状态应用程序比有状态应用程序更容易使用Docker容器
    进行扩展。
  10. Docker和虚拟机有啥不同

    复制代码
    Docker 是轻量级的沙盒,在其中运行的只是应用,虚拟机里面还有额外的系统。
相关推荐
滕州市燕猫虎计算机科技工作室个体工商户17 分钟前
Java面试题汇总
java·开发语言
新时代牛马34 分钟前
docker run 起不来?从dockerd、containerd 到runc 一条线讲透
运维·docker·容器
JavaPub-rodert34 分钟前
Docker 安装 MySQL 完整教程:从零部署数据库,到生产环境持久化配置
数据库·mysql·docker
2301_32241428041 小时前
活力孕康复APP 47737- 原创(免费领源码+部署教程+开发环境)
java·vue.js·spring boot·mysql·微信小程序·idea·微信开发者工具
君顾11 小时前
外卖CPS软件开发实战:从系统架构到部署全流程指南
java·开发语言·外卖
努力努力再努力wz2 小时前
【Docker 入门系列】:从 Namespace、CGroup 到 LXC:理解容器运行时、rootfs 与 LXC 实战
运维·docker·容器
vx_Biye_Design2 小时前
springboot游泳馆系统93765-计算机课程设计、毕业设计
java·javascript·spring boot·后端·python·spring·课程设计
名字还没想好☜2 小时前
Java NIO ByteBuffer 实战:flip/clear/compact 三个绕晕人的方法与 position/limit 心智模型
java·开发语言·后端·spring·nio
Wang's Blog3 小时前
Java框架快速入门: Spring Security+OAuth2之短信服务多供应商动态切换(阿里云与LeanCloud)
java·spring·阿里云
Doubbbbbbble云3 小时前
区间合并问题的常见算法模式与优化思路4
java·数据结构·算法