面试题之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.进入容器

 

 

 ​​​​​​​

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Elastic Support Hub 转向语义搜索

作者:Chris Blaisure 我们很高兴与大家分享 Elastic Support Hub 最近的增强功能:它现在由语义搜索提供支持! 但在我们更详细地了解对 Elastic Support Hub 所做的更改及其对客户的影响之前,我们需要花点时间解释语义搜索的概念&…

el-form表单校验值为0提示校验不通过

el-form表单校验输入框值为0时提示校验不通过 配置validator自定义校验方法 这里举例在结构代码里加入校验规则 <el-form-item:prop"num":rules"[{required: true,message: 请输入数量,trigger: change,},{validator,trigger: blur}]" ><el-inpu…

【安卓】安卓xTS之Media模块 学习笔记(3) VTS测试

1. 背景 接下来进行正式的VTS测试。本章节还是以Media模块相关进行介绍。 VTS主要测的是内核和HAL层&#xff0c;media的hal层是以openMax&#xff08;即将废弃&#xff0c;今日2023.12&#xff09; 和 Codec2 (后续主流) 接口为主。 这里我们只看Codec2的要求&#xff0c;CDD…

统计字符

输入一行字符&#xff0c;分别统计出包含英文字母、空格、数字和其它字符的个数。 数据范围&#xff1a;输入的字符串长度满足1≤n≤1000 输入描述&#xff1a;输入一行字符串&#xff0c;可以有空格 输出描述&#xff1a;统计其中英文字符&#xff0c;空格字符&#xff0c;数…

MongoDB的插入文档、更新文档语句

本文主要介绍MongoDB的插入文档、更新文档语句。 目录 MongoDB插入文档MongoDB更新文档 MongoDB插入文档 在MongoDB中&#xff0c;可以通过使用insertOne或insertMany方法向集合中插入文档。 insertOne方法可以插入一个文档&#xff0c;例如&#xff1a; db.collection.inse…

Android 等待view 加载布局完成 (包括动态生成View)

前言 在实际开发中&#xff0c;有很多组件需要 根据数据&#xff0c;动态生成&#xff0c;或者 追加 / 减少 子view&#xff0c;由于View布局需要时间&#xff0c;此时想要获取父View的最新宽高值&#xff0c;要么手动测量&#xff0c;要么等待布局完成后再获取&#xff1b; …

“天作之合”softmax与CrossEntropy

本文从 max \text{max} max到 logsumexp ⁡ \operatorname{logsumexp} logsumexp&#xff0c;再到 softmax \text{softmax} softmax进行了一个简单推导&#xff0c;最后说明了 softmax \text{softmax} softmax与CrossEntropy的关系。希望帮助大家理解多分类损失函数CrossEntrop…

树莓派学习:学习opencv+用opencv获取树莓派mjpg摄像头视频流

目录 前提步骤 打开树莓派摄像头 查看是否有图像&#xff0c;登录游览器打开树莓派IP地址的8080端口 获取mjpg的视频流url 代码 先设定好mjpg的视频流的url 利用opencv库中的v2.VideoCapture类读取mjpg视频流 cv2.VideoCapture() 检查摄像头是否成功打开&#xff0c;…

scikit-learn实现线性回归

要学习scikit-learn,我们必须要到scikit-clearn的官网中去查看公式和原理 scikit-learn 官网 scikit-learn 中文社区 进入官网一以后我们找到回归&#xff0c;然后再有监督学习中找到线性模型 scikit-learn实现简单的线性回归 公式&#xff1a; L2范数是指向量中每个元素的平…

Java+Swing: 主界面的窗体 整理8

主界面的写法跟之前登录界面的窗体写法大致相同&#xff0c;在主界面中主要是窗体的大小的设置 package com.student_view;import com.utils.DimensionUtil; import sun.applet.Main;import javax.swing.*; import java.awt.*; import java.net.URL;/*** Author&#xff1a;xie…

C# --线程的进化史

1.C# 线程的进化史可以追溯到 .NET Framework 的早期版本和 C# 语言的发展过程 Thread 类&#xff08;.NET Framework 1.0&#xff09;&#xff1a;最初&#xff0c;C# 中使用 Thread 类来创建和管理线程。通过实例化 Thread 类并调用其 Start 方法&#xff0c;可以在应用程序…

全面覆盖,无所不包:C++ 编程必备指南 | 开源日报 No.99

fffaraz/awesome-cpp Stars: 51.0k License: MIT 这个项目是一个精心策划的 C(或者 C) 框架、库、资源和其他有趣东西的列表。它收集了各种标准库&#xff0c;如 STL 容器和算法&#xff1b;不同领域的框架&#xff0c;比如人工智能、异步事件循环等&#xff1b;以及一系列功…

【人工智能Ⅰ】实验7:K-means聚类实验

实验7 K-means聚类实验 一、实验目的 学习K-means算法基本原理&#xff0c;实现Iris数据聚类。 二、实验内容 应用K-means算法对iris数据集进行聚类。 三、实验结果及分析 0&#xff1a;输出数据集的基本信息 参考代码在main函数中首先打印了数据、特征名字、目标值、目标…

【上海大学数字逻辑实验报告】四、组合电路(三)

一、 实验目的 掌握多路选择器74LS151的原理。掌握译码器74LS138的原理。学会在Quartus II上使用多路选择74LS151设计电路。学会在Quartus II上使用译码器74LS138设计电路。 二、 实验原理 多路选择器又称数据选择器或多路开关&#xff0c;它是一种多路输入单路输出的组合逻…

HHDESK右键管理简介

在HHDESK管理文件&#xff0c;除了基本的打开、删除、复制、粘贴、重命名外&#xff0c;还有多种便捷编辑方式。 可以分别以下列模式打开文档&#xff1a; 文本模式即是以文本编辑器打开文档。 1 二进制模式 可进行二进制编辑。 2 JSON模式 可对JSON文件进行直观的解析…

机器学习中的特征工程

1 特征工程概述 特征工程是机器学习中的一个关键步骤&#xff0c;在机器学习领域中占有非常重要的地位&#xff0c;是机器学习中不可或缺的一部分&#xff0c;下图展示了一个常规的机器学习流程&#xff1a; 特征工程涉及从原始数据中提取、选择和转换特征&#xff0c;以改善模…

Lombok 处理异常@SneakyThrows 注解

文章目录 注解的介绍具体示例 注解的介绍 SneakyThrows 是 Lombok 框架提供的一个注解&#xff0c;它可以用于在方法中抛出受检异常时&#xff0c;不用显式地对异常进行处理&#xff0c;而是将异常包装成 RuntimeException 抛出 使用 SneakyThrows 注解后&#xff0c;编译器会…

“轻松管理文件,一键导出表格,让您的归档工作井井有条“

在忙碌的工作中&#xff0c;我们经常会被大量的文件和数据所困扰。如何有效地管理和整理这些资料&#xff0c;成为了一个让人头疼的问题。今天&#xff0c;我们向您介绍一款强大的文件管理工具——一键导出表格&#xff0c;帮助您轻松解决这个问题。 第一步&#xff0c;首先我们…

区块链实验室(30) - 区块链期刊:Distributed Ledger Technologies: Research and Practice

区块链涉及多学科及技术&#xff0c;众多期刊接收区块链文章。Distributed Ledger Technologies: Research and Practice是ACM出版集团的一本期刊。 Distributed Ledger Technologies: Research and Practice创刊历史很短&#xff0c;始于2022年&#xff0c;出版期数也不多。 载…

力扣面试150题 | 多数元素

力扣面试150题 &#xff5c; 多数元素 题目描述解题思路代码实现 题目描述 给定一个大小为 n 的数组 nums &#xff0c;返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的&#xff0c;并且给定的数组总是存在多数元素。 示…