Docker常见面试题整理
文章目录
- 1. Docker 是什么?它解决了什么问题?
- 2. Docker 和虚拟机(VM)的区别是什么?
- 3、Docker三个核心概念
- 4、如何构建一个 Docker 镜像?
- 5、如何将一个 Docker 容器连接到多个网络?
- 6、Docker Compose 是什么?
- 7、如何实现 Docker 容器的持久化存储?
- 8、如何查看 Docker 容器的日志?
Win7 Docker环境搭建查看:Win7 Docker环境搭建
MacOS使用docker安装nginx查看:MacOS使用docker安装nginx
1. Docker 是什么?它解决了什么问题?
Docker 是一种容器化平台,允许开发者打包应用程序及其依赖项到一个可移植的容器中,然后发布到任何支持 Docker 的环境中运行。
Docker 解决了传统虚拟化环境中应用部署和运行时的依赖、配置、环境一致性等问题,提供了更轻量、更快速的应用部署和扩展方案。
2. Docker 和虚拟机(VM)的区别是什么?
Docker 使用容器技术,而虚拟机使用完整的操作系统虚拟化。
Docker 容器共享主机操作系统的内核,因此更加轻量和快速,启动时间通常在秒级别。
虚拟机则需要独立的操作系统实例,占用更多资源和启动时间较长。
3、Docker三个核心概念
Docker的镜像、容器、仓库是Docker技术中的三个核心概念:
- 镜像(mnage) :镜像是一个只读的模板,它包含了
运行应用程序所需的环境和文件。例如,一个镜像可以包含一个完整的Ubuntu操作系统环境,里面仅安装了Apache或用户需要的其它应用程序。镜像可以用来创建Docker容器。 - 容器 (Container) :容器是从镜像创建的运行实例。它可以被启动、停止、删除,
每个容器都是相互隔离的、保证安全的平台,可以看作是一个简易版的Linux环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。 - 仓库 (Repository) :仓库是
存放所有的镜像文件的场所。Docker Hub是一个公共仓库,供用户下载和存储镜像。用户也可以在本地网络内创建一个私有仓库。
4、如何构建一个 Docker 镜像?
创建一个 Dockerfile,定义镜像的内容和环境。
使用 Docker CLI 中的 docker build 命令来构建镜像,例如:docker build -t myapp:1.0
Dockerfile 中包括指令如 FROM(基础镜像)、RUN(运行命令)、COPY(复制文件)、CMD(容器启动命令)等。
5、如何将一个 Docker 容器连接到多个网络?
可以使用 Docker 网络命令(docker network connect)将容器连接到多个自定义网络。
默认情况下,Docker 容器连接到默认的桥接网络(bridge network),但也可以创建自定义网络,并将容器连接到这些网络。
6、Docker Compose 是什么?
Docker Compose是一个用于定义和运行多个Docker容器的工具。它使用YAML文件来配置应用程序的服务,并允许通过一个命令来启动、停止和重启应用中的所有服务。
Docker Compose的主要作用是简化容器的管理和部署。它使得多个容器能够以正确的顺序和依赖关系启动,并确保它们在运行时可以相互通信。这使得开发人员可以更容易地处理复杂的Docker环境,尤其是在需要多个容器协同工作的场景下。
使用Docker Compose的场景包括但不限于以下情况:
- 需要构建和运行多个容器的应用程序,例如Web应用、数据库和缓存等
- 需要在不同环境(如开发、测试、生产》中部署相同应用程序,但需要配置
- 不同的容器数量或镜像版本。需要快速启动和停止应用程序,例如在开发或测试过程中。
总之,Docker Compose是一个强大的工具,可以帮助开发人员和管理员更好地管理和部署Docker容器化的应用程序
7、如何实现 Docker 容器的持久化存储?
Docker 数据卷:是用于持久化存储容器中数据的目录或文件。
它允许容器之间或容器与主机之间共享数据,以及在容器重启时保持数据的持久性。
使用 Docker 数据卷(Volumes)或者绑定挂载(Bind Mounts)来实现容器中数据的持久化存储。数据卷是 Docker 管理的一部分,而绑定挂载直接将主机文件系统的路径挂载到容器中。
8、如何查看 Docker 容器的日志?
使用 docker logs 命令来查看指定容器的日志,例如:docker logs mycontainer
可以通过 -f 参数实时跟踪日志输出,类似于 tail -f 的功能。
相关文章:
Docker常见面试题整理
文章目录 1. Docker 是什么?它解决了什么问题?2. Docker 和虚拟机(VM)的区别是什么?3、Docker三个核心概念4、如何构建一个 Docker 镜像?5、如何将一个 Docker 容器连接到多个网络?6、Docker Co…...
35 - 最后一个能进入巴士的人(高频 SQL 50 题基础版)
35 - 最后一个能进入巴士的人 -- sum(weight) over(order by turn) as total,根据turn升序,再求前面数的和 selectperson_name from(selectperson_name,sum(weight) over(order by turn) as totalfromQueue) new_Queue wheretotal<1000 order by total desc lim…...
WPF将dll文件嵌入到exe文件中
WPF将dll文件嵌入到exe文件中 第一步:打开.csproj文件,在Import节点后添加如下代码: <Target Name"AfterResolveReferences"><ItemGroup><EmbeddedResource Include"(ReferenceCopyLocalPaths)" Condit…...
2024年AI+游戏赛道的公司和工具归类总结
随着人工智能技术的飞速发展,AI在游戏开发领域的应用越来越广泛。以下是对2024年AI+游戏赛道的公司和工具的归类总结,涵盖了从角色和场景设计到音频制作,再到动作捕捉和动画生成等多个方面。 2D与3D创作 2D创作工具:专注于角色和场景的平面设计,提供AI辅助的图案生成和风…...
svm和决策树基本知识以及模型评价以及模型保存
svm和决策树基本知识以及模型评价以及模型保存 文章目录 一、SVM1.1,常用属性函数 二、决策树2.1,常用属性函数2.2,决策树可视化2.3,决策树解释 3,模型评价3.1,方面一(评价指标)3.2&…...
C++ 79 之 自己写异常类
#include <iostream> #include <string> using namespace std;class MyOutOfRange : public exception{ // 选中exception右键 转到定义 复制一份 virtual const char* what() const _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_NOTHROW 进行函数重写 public: string m_msg;M…...
如何搭建一个成功的短剧制作平台
要搭建一个成功的短剧制作平台,需要考虑多个方面,包括目标定位、技术选择、内容管理、用户体验等。 1、明确目标和定位: 确定你的目标受众是谁,他们的年龄、兴趣、消费习惯等。 明确短剧制作平台的主要定位,是提供原创…...
kotlin类
一、定义 1、kotlin中使用关键字class 声明类,如果一个类没有类体,也可以省略花括号, 默认为public 类型的: // 这段代码定义了一个公开的、不可被继承的Test类 class Test{} // 没有类体,可以省略花括号 class Test 底层代码&…...
android | studio的UI布局和代码调试 | UI调试 (用于找到项目源码)
网上找到一个项目,想快速的搞懂是怎么实现的,搞了半天发现原来android都升级到Jetpack Compose了,然后去找源码挺不容易的,摸索中发现了这个调试的方法,还可以。 https://developer.android.com/studio/debug/layout-i…...
LangChain实战技巧之六:一起玩转config(上篇)——ConfigurableField
简介 Config 包含两大类内容, ConfigurableField 可配置的字段 configurable_alternatives 可配置的替代方案 分别使用两篇文章来给大家介绍,本篇先介绍ConfigurableField 常规介绍 一些资料会这样介绍 model_spec model.configurable_fields(model…...
扫码称重上位机
目录 一 设计原型 二 后台代码 一 设计原型 模拟工具: 二 后台代码 主程序: using System.IO.Ports; using System.Net; using System.Net.Sockets; using System.Text;namespace 扫码称重上位机 {public partial class Form1 : Form{public Form1(){Initialize…...
操作系统入门 -- 进程的通信方式
操作系统入门 – 进程的通信方式 1.什么是进程通信 1.1 定义 进程通信就是在不同进程之间交换信息。在之前文章中可以了解到,进程之间相互独立,一般不可能互相访问。因此进程之间若需要通信,则需要一个所有进程都认可的共享空间࿰…...
Python读取wps中的DISPIMG图片格式
需求: 读出excel的图片内容,这放在微软三件套是很容易的,但是由于wps的固有格式,会出现奇怪的问题,只能读出:类似于 DISPIMG(“ID_2B83F9717AE1XXXX920xxxx644C80DB1”,1) 【该DISPIMG函数只有wps才拥有】 …...
elasticsearch的入门与实践
Elasticsearch是一个基于Lucene构建的开源搜索引擎。它提供了一个分布式、多租户能力的全文搜索引擎,具有HTTP web接口和无模式的JSON文档。以下是Elasticsearch的入门与实践的基本步骤: 入门 安装Elasticsearch: 从Elasticsearch官网下载对…...
神经网络学习6-线性层
归一化用的较少 正则化用来解决过拟合,处理最优化问题,批量归一化加快速度 正则化(Regularization): 作用:正则化是一种用来防止过拟合的技术,通过向模型的损失函数中添加惩罚项,使…...
PHP框架详解 - CodeIgniter 框架
CodeIgniter 是一个成熟的轻量级 PHP 框架,专为小到中型的 Web 应用开发设计。它以其简洁、灵活和易于学习的特点而受到开发者的喜爱。 CodeIgniter 框架的特点包括: 轻量级:CodeIgniter 的核心非常小,加载速度快,适…...
奔驰EQS SUV升级原厂主动式氛围灯效果展示
以下是一篇关于奔驰 EQs 升级原厂主动氛围灯案例的宣传文案: 在汽车科技不断演进的今天,我们自豪地为您呈现奔驰 EQs 升级原厂主动氛围灯的精彩案例。 奔驰 EQs,作为豪华电动汽车的典范,其卓越品质与高端性能有目共睹。而此次升…...
echarts Y轴展示时间片段,series data数据 也是时间片段,鼠标放上去 提示框显示对应的时间片段
功能要求 1、折线图,展示每天对应的一个时间片段 2、echarts Y轴展示时间片段,如:[00:00,03:00,05:15] 3、X轴展示日期,如:[xx年xx月xx日] 后端返回的数据结构,如 [{xAdate:"2024-06-15",data:…...
20. mediasoup服务器的布署与使用
Mediasoup Demo部署 架构服务分析 服务端提供3个服务: 1.www服务,浏览器通过访问服务器目录获取客户端代码,通过V8引擎,启动底层WebRTC 2.nodejs提供websocket服务和http服务,用于信令交互 3.Mediasoup C提供的流媒体…...
【leetcode--同构字符串】
要求:判断两个字符串的形式是不是一致,即是不是AABC或者ABBBCC这种。 trick:使用set()结合zip()。 set()用法:用于创建一个不包含重复元素的集合 zip&#…...
2026年唯一通过广电AIGC内容安全认证的3款视频生成工具(附检测报告编号+审核链路图解)
更多请点击: https://kaifayun.com 第一章:2026年AI视频生成工具排行榜 2026年,AI视频生成技术已迈入“语义帧精控”与“跨模态时序对齐”新阶段。主流工具普遍支持 毫秒级动作锚点标注、 物理引擎协同渲染及 多镜头逻辑自动剪辑,…...
企业级融媒体生产管理平台/智能会议管理系统EasyDSS构建一体化应急视频指挥体系
在自然灾害、安全生产事故等突发事件处置中,应急指挥的核心诉求是数据绝对安全、指令极速传递、态势全面感知。私有化视频会议系统EasyDSS打破传统协作壁垒,为应急指挥打造专属化、高可靠的音视频中枢,成为应急处置的核心技术支撑。一、私有化…...
FPGA系统时钟革新:纯硅可编程振荡器提升可靠性与设计灵活性
1. 项目概述:为什么FPGA需要一个更“稳”的时钟?在FPGA(现场可编程门阵列)的设计与应用中,时钟信号就像是整个数字系统的“心跳”。无论是高速数据采集、复杂算法处理,还是多协议通信,一个稳定、…...
Adams新手避坑指南:从几何点、Marker坐标系到立方体,这些基础元素你真的用对了吗?
Adams新手避坑指南:几何元素背后的工程逻辑与实战陷阱 刚接触Adams的工程师常会陷入一个误区——把软件操作手册当作圣经,却忽略了每个几何元素背后的物理意义和工程逻辑。这种"知其然不知其所以然"的学习方式,往往会导致仿真结果失…...
计算机数值型数据表示:从二进制到浮点数与字符编码的底层原理
1. 项目概述:从“0”和“1”到万千世界我们每天都在和计算机打交道,无论是刷短视频、处理文档,还是运行复杂的科学计算。你有没有想过,屏幕上那些生动的图像、动听的音乐、精确的数值,在计算机的“大脑”——CPU和内存…...
从《GPU Gems》到实战:次表面散射(SSS)的四种“平替”方案全解析(含代码对比)
从《GPU Gems》到实战:次表面散射(SSS)的四种“平替”方案全解析(含代码对比) 在实时渲染领域,次表面散射(Subsurface Scattering,简称SSS)一直是提升材质真实感的关键技…...
从Kafka设计哲学到高性能系统通用模式:吞吐、顺序I/O与批处理的艺术
1. 项目概述:为什么是Kafka?如果你在后台开发、数据平台或者中间件领域摸爬滚打过几年,大概率会听过甚至深度使用过Apache Kafka。它早已不是一个简单的消息队列,而是现代数据驱动架构的“中枢神经系统”。我最初接触Kafka&#x…...
别再只下载不固化!紫光同创FPGA/CPLD烧录到Flash的保姆级避坑指南
紫光同创FPGA/CPLD烧录实战:从临时下载到永久固化的全流程精解 第一次成功将程序下载到紫光同创FPGA开发板时的兴奋,很快被一个残酷现实浇灭——断电重启后,所有心血归零。这个场景对许多初学者来说再熟悉不过。JTAG下载只是起点,…...
从NOIP到CSP:信息学奥赛初赛这15年真题,我帮你划出了重点考点变迁
信息学奥赛初赛15年考纲演进:从NOIP到CSP的考点变迁与备考策略 翻开2007年NOIP普及组的初赛试卷,再对比2022年CSP-J/S的真题,你会惊讶地发现:同样是"入门级"考试,题目考察的维度和深度已经发生了翻天覆地的变…...
别再怕模型不准了!用MATLAB的musyn命令搞定鲁棒控制器设计(附D-K迭代详解)
用MATLAB的musyn命令实现工业级鲁棒控制器设计实战指南 在控制系统的实际工程应用中,模型不确定性就像房间里的大象——人人都知道存在,却常常选择忽视。直到某天,精心设计的控制器在真实环境中表现失常,工程师们才意识到那些被忽…...
