面试题之Docker篇

1、Docker 是什么?

Docker一个开源的应用容器引擎,是实现容器技术的一种工具,让开发者可以打包他们的应用以及环境到一个镜像中,可以快速的发布到任何流行的操作系统上。

 2、Docker的三大核心是什么?


镜像:Docker的镜像是创建容器的只读模板,通过镜像启动一个容器或多个容器。
容器:Docker的容器是镜像创建出来的运行实例,可以把容器看做是一个简易版的linux环境和运行在其中的应用程序。
仓库:用来存放镜像的地方,每个镜像有不同标签(tag)。
 

3、仓库、镜像、容器的关系是?

仓库存放镜像,主机通过仓库下载镜像,通过镜像创建容器。

4、Docker与虚拟机的区别


内核:虚拟机有单独的系统内核,Docker与宿主机共享系统内核,所以虚拟机相对与Docker隔离性更好一些,虚拟机相当于物理层面的隔离,Docker相当于应用层面的额隔离。
大小:Docker镜像一般在几十M到几百M,比较轻量,虚拟机一般在在几G,比较笨重。
速度:Docker共享宿主机内核一般秒级启动,虚拟机时分钟级别的。
资源:Docker占用更少的资源,虚拟机有完整的系统所以占用资源比较多。

5、Docker容器的集中状态

状态有7种:

  • created(已创建)
  • restarting(重启中)
  • running(运行中)
  • removing(迁移中)
  • paused(暂停)
  • exited(停止)
  • dead(死亡)
6、如何把主机的东西拷贝到容器内部?

通过 docker cp 命令即可,还能把容器内部内容拷贝到主机。

7、进入容器的方法有哪些?

通过 docker exec 进入容器内部。

8、如何让容器随着 Docker 服务启动而自动启动?
  • 创建容器时,加上 --restart=always 参数。
  • 创建容器后,通过修改容器配置文件的 RestartPolicy 参数值。
  • 创建容器后,使用 docker update 命令更新容器的 --restart 参数值。

9、如何指定容器的端口映射?
  • 创建容器时,通过 -p 来指定端口映射。
  • 创建容器后,通过修改容器的配置文件来指定端口映射。

10、如何查看容器服务的默认端口


通过 docker ps 查看运行端口是什么。
也可以通过 docker inspect 查看镜像信息,然后找到端口映射一栏。


11、如何指定容器的目录映射?


创建容器时,通过 -v 来指定目录映射。
创建容器后,通过修改容器的配置文件来指定目录映射。


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


按 Ctrl+p+q


13、查看容器日志信息


使用 docker logs

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


默认情况下:

Ubuntu系统中 Docker 的配置文件是/etc/default/docker,
CentOS系统配置文件存放在/etc/sysconfig/docker


15、什么是 DockerFile?


Dockerfile 是一个文本文件,其中包含构建 Docker 映像所需的所有命令。 Docker 使用 Dockerfile 中的指令自动构建镜像。我们可以使用docker build创建自动构建,按顺序执行多个命令行指令。

16、docker常用的命令
 

 Docker环境信息   info、version
容器生命周期管理  create、exec、kill、pause、restart、rm、run、start、stop、unpause
镜像仓库命令      login、logout、pull、push、search
镜像管理          build、images、import、load、rmi、save、tag、commit
容器运维操作      attach、export、inspect、port、ps、rename、stats、top、wait、cp、diff、update
容器资源管理      volume、network
系统信息日志      events、history、logs
1.events打印容器的实时系统事件
2.history 打印出指定镜像的历史版本信息
3.logs打印容器中进程的运行日志

17.容器启动过程

18.进入容器

 

 

 ​​​​​​​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/230937.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MBD Introduction

介绍 MATLAB是MathWorks公司的商业数学软件,应用于科学计算、可视化以及交互式程序设计等高科技计算环境。Simulink是MATLAB中的一种可视化仿真工具。 Simulink是一个模块图环境,用于多域仿真以及基于模型的设计。它支持系统设计、仿真、自动代码生成以…

openGauss学习笔记-144 openGauss 数据库运维-例行维护-慢sql诊断

文章目录 openGauss学习笔记-144 openGauss 数据库运维-例行维护-慢sql诊断144.1 背景信息144.2 前提条件 openGauss学习笔记-144 openGauss 数据库运维-例行维护-慢sql诊断 144.1 背景信息 在SQL语句执行性能不符合预期时,可以查看SQL语句执行信息,便…

【Linux】tmux简单使用

它允许你在一个终端窗口中创建多个终端会话,并在它们之间进行切换。以下是tmux的一些主要用途和功能: 多窗口: Tmux允许你在一个终端中创建多个窗口。每个窗口可以包含一个或多个终端会话,你可以轻松地在这些窗口之间切换。面板分…

Helio 升级为 LISTA DAO,开启多链时代新篇章并宣布积分空投计划

Helio Protocol 是 BNB Chain 上排名第一的去中心化稳定币协议,其推出的超额抵押和清算机制支持的去中心化稳定币 HAY,在 BNB Chain 有非常广泛的应用,包括流动性挖掘、质押、交易、储值等! 2023 年 7 月,Helio Protoc…

python基于DeeplabV3Plus开发构建手机屏幕表面缺陷图像分割识别系统

Deeplab是图像分割领域非常强大的模型,在前面的博文中我们也进行过很多相应项目的开发实践,感兴趣的话可以自行移步阅读即可: 《基于DeepLabv3Plus开发构建人脸人像分割系统》 《基于DeepLabV3实践路面、桥梁、基建裂缝裂痕分割》 《基于D…

金蝶 Apusic 应用服务器任意文件上传漏洞

声明 本文仅用于技术交流,请勿用于非法用途 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。 1. 产品介绍 金蝶 Apusic 是金蝶集团旗下的一款企业级应用服务器&#…

鸿蒙原生应用/元服务开发-新手入门练习心得

1.先根据案例模仿代码(页面跳转案例) 点击next后跳转页面,点击back返回第一个页面 2.模块化层层拆解代码 先创建了row,一行,在这一行里面写代码: 内容都放到Column中 Text内置组件可以直接引用文本 thi…

前端笔记(四)Flex 布局

标准流 标准流也叫文档流,指的是标签在页面中默认的派不规则,例如:块元素独占一行,行内元素可以一行显示多个。 但是很多的网页布局都是块元素在一行中显示的,这时候就需要浮动和 Flex 布局,浮动只需要了解…

地址栏不安全提示

在使用浏览器时访问网站的时候,我们可能会遇到地址栏提示不安全的情况。这种情况通常都是是由于未安装有效SSL证书或者网站SSL证书过期等原因导致的。本文将介绍如何处理地址栏提示不安全的问题,以确保我们的上网安全。 1,缺少SSL证书&#x…

基于Java SSM框架实现超市进销存购物商城管理系统项目【项目源码+论文说明】

基于java的SSM框架实现超市进销存购物商城管理系统演示 摘要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,社区生活超市管理系统当然也不能排除在外。社区生活超市管理系统…

TQ2440开发板-按键驱动程序设计

目录 按键测试底板原理图核心板原理图使用轮询方式设计按键程序 按键测试底板原理图 TQ2440开发板有4个用户可编程按键,它们直接与CPU的GPIO相连,低电平触发中断,资源占用如下图所示: 核心板原理图 使用轮询方式设计按键程序 按…

使用FFMPEG转码,转单声道,转标准WAV,转PCM

本文为使用FFMPEG命令行的方式处理音频,来获取想要得到的音频文件。 零、使用命令行查看编码封装信息 格式:ffprobe.exe -show_format inputfile 例子:ffprobe.exe -show_format .\stereo_44_16bit.wav 运行结果为下图: 如图可…

HNU计算机结构体系-实验2:CPU动态指令调度Tomasulo

文章目录 实验2 CPU动态指令调度Tomasulo一、实验目的二、实验说明三、实验内容问题1:问题2:问题3:问题4:问题5: 四、思考题问题1:问题2: 五、实验总结 实验2 CPU动态指令调度Tomasulo 一、实验…

前端canvas的基础使用

一、介绍 前端中的 Canvas 是一种用于在网页上绘制图形的 HTML 元素。它提供了一个可以通过 JavaScript 进行绘制的 2D 绘图环境。使用 Canvas,您可以绘制图形,包括线条、矩形、圆形、文本和图像。Canvas 为开发人员提供了灵活自由的绘图能力&#xff0…

FlexRay总线信号译码

我们用虹科Pico汽车示波器捕捉了FlexRay总线信号 ,一定要用专用的高速探头,不能用基本的BNC测试线来测。因为FlexRay的传输信号太快,用基本的BNC测试线来测,信号会失真严重。 专用的高速探头有TA499,如下图&#xff1a…

Vue3-01-创建项目

环境准备 1.需要用到 16.0 以及更高版本的 node.js 2.使用vscode编辑器进行项目开发可以在命令行中查看node的版本号: node -v创建项目 1.准备一个目录 例如,我创建项目的时候是在该目录下进行的;D:\projectsTest\vue3project2.执行创建命令(*&#x…

Nacos 基础篇:Nacos简介、基本概念、基本架构、Standalone单机搭建部署

文章目录 什么是Nacos基本架构逻辑架构及其组件介绍领域模型数据模型服务领域模型配置领域模型 下载目录结构配置启动 什么是Nacos Nacos:(Dynamic) Naming and Configuration Service,动态的服务发现和配置的服务,是一个更易于构建云原生应…

Qt/C++音视频开发58-逐帧播放/上一帧下一帧/切换播放进度/实时解码

一、前言 逐帧播放是近期增加的功能,之前也一直思考过这个功能该如何实现,对于mdk/qtav等内核组件,可以直接用该组件提供的接口实现即可,而对于ffmpeg,需要自己处理,如果有缓存的数据的话,可以…

Linux(17):认识与分析登录档

什么是登录档 【详细而确实的分析以及备份系统的登录文件】是一个系统管理员应该要进行的任务之一。 登录档 就是记录系统活动信息的几个文件,例如:何时、何地(来源IP)、何人(什么服务名称)、做了什么动作(讯息登录啰)。 换句话说就是:记录系…

设置网络发现,合理利用共享,让自己在准确的地方出现或隐藏

本文介绍如何在Windows 11中打开或关闭网络发现。它还解释了网络发现的用途以及你可能想使用(或不使用)它的时间。 如何在Windows 11中切换网络发现 可以在“设置”中打开和关闭网络发现。 1、使用WINI快捷方式打开“设置”或从任务栏中搜索。 2、选…