【docker】docker 关键技术 —— 镜像制作

news2024/11/23 12:12:19

docker 镜像制作

  • 镜像制作及原因
  • Docker 镜像制作方式
  • 快照方式制作镜像
    • 制作命令
  • Dockerfile 制作镜像
    • Dockerfile 是什么
    • Dockerfile 格式
    • 为什么需要 Dockerfile
    • gitee 详细使用 Dockerfile 教程

镜像制作及原因

镜像制作是因为某种需求,官方的镜像无法满足需求,需要我们通过一定手段来自定义镜像来满足要求。

制作镜像往往因为以下原因

  1. 编写的代码如何打包到镜像中直接跟随镜像发布
  2. 第三方制作的内容安全性未知,如含有安全漏洞
  3. 特定的需求或者功能无法满足,如需要给数据库添加审计功能
  4. 公司内部要求基于公司内部的系统制作镜像,如公司内部要求使用自己的操作系统作为基础镜像

Docker 镜像制作方式

制作容器镜像,主要有两种方法:

  • 制作快照方式获得镜像(偶尔制作的镜像):在基础镜像上(比如 Ubuntu),先登录容器中,然后安装镜像需要的所有软件,最后整体制作快照。
  • Dockerfile 方式构建镜像(经常更新的镜像):将软件安装的流程写成 Dockerfile,使用 docker build 构建成容器镜像。

快照方式制作镜像

制作命令

docker commit

• 功能

从容器创建一个新的镜像。

在这里插入图片描述

Dockerfile 制作镜像

Dockerfile 是什么

镜像的定制实际上就是定制每一层所添加的配置、文件。如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本,用这个脚本来构建、定制镜像,这个脚本就是 Dockerfile。

Dockerfile 是一个文本文件,其内包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。

Dockerfile 格式

在这里插入图片描述
该指令不区分大小写。然而,约定是它们是大写的,以便更容易地将它们与参数区分开来。

Docker 按顺序运行指令 Dockerfile

Docker 将以开头的行视为#注释,行中其他任何地方的标记#都被视为参数。这允许像这样的语句:

在这里插入图片描述

为什么需要 Dockerfile

  • 可以按照需求自定义镜像
    • 和 docker commit 一样能够自定义镜像,官方的镜像可以说很少能直接满足我们应用的,都需要我们自己打包自己的代码进去然后做成对应的应用镜像对外使用。
  • 很方便的自动化构建,重复执行
    • 通过 dockerfile 可以自动化的完成镜像构建,而不是像 docker commit 一样,手动一个命令一个命令执行,而且可以重复执行,docker commit 的话很容易忘记执行了哪个命令,哪个命令没有执行。
  • 维护修改方便,不再是黑箱操作
    • 使用 docker commit 意味着所有对镜像的操作都是黑箱操作,生成的镜像也被称为黑箱镜像,dockerfile 很容易二次开发。
  • 更加标准化,体积可以做的更小
    • docker 容器启动后,系统运行会生成很多运行时的文件,如果使用 commit 会导致这些文件也存储到镜像里面,而且 commit 的时候安装了很多的依赖文件,没有有效的清理机制的话会导致镜像非常的臃肿。使用 Dockerfile 则会更加标准化,而且提供多级构建,将编译和构建分开,不会有运行时的多余文件,更加的标准化。

gitee 详细使用 Dockerfile 教程

gitee 详细使用 Dockerfile 教程

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

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

相关文章

云服务器和物理服务器的区别在哪

在当今数字化的时代,服务器在企业和个人的信息技术架构中扮演着至关重要的角色。其中,云服务器和物理服务器是两种主要的服务器类型,它们在多个方面存在着明显的区别。 一、硬件方面 物理服务器是实实在在的物理硬件设备,它由机…

写论文还在卡壳?教你用ChatGPT轻松搞定过渡段落!

AIPaperGPT,论文写作神器~ https://www.aipapergpt.com/ 在写论文的路上,最让人头疼的除了查重率飙升,估计就是文献综述了吧! 想想看,文献一篇接着一篇,脑子都快炸了,还得想办法把它们连接得…

使用JLink V8烧写友善之臂Mini2440 Superboot2440.bin到NORflash里

1 开发环境 PC:Windows 11、开发板Mini2440、仿真器JLink V8、Jlink转接板、JLinkARM烧录工具V4.34版本Setup_JLinkARM_V434.exe 准备工作:安装好烧录工具JLinkARM,按照网上的接线方法将PC、开发板和JLink仿真器连接起来。 组网:…

Radware Alteon 负载均衡-基于URL Filetype的七层负载均衡

作者:Xiaolei Ren Radware Alteon作为一款高性能的负载均衡器,其基于URL Filetype的七层负载均衡功能为众多企业提供了灵活、高效的解决方案。 该案例实现如下需求:当客户端访问服务器时,默认访问10.200.1.100,在ht…

使用Let’s Encrypt 配置 SSL 证书去除浏览器不安全告警

Let’s Encrypt是什么 https://letsencrypt.org/zh-cn/about/如何操作进行配置实现ssl认证 使用 certbot 获取 Let’s Encrypt 的免费 SSL 证书 更新系统软件包 sudo yum update -y安装 EPEL 仓库(Certbot 通常位于 EPEL 仓库中): sudo yum

【C++】STL——vecot的模拟实现

目录 前言总体结构默认成员函数构造函数拷贝构造赋值重载析构函数 vector的相关容量空间以及访问的实现capacity()和size()迭代器实现operator[]reserve vector类对象的修改操作尾插尾删任意位置插入任意位置删除交换和清理 前言 前面我们已经学习了解了vector重要接口的使用&a…

Appium如何简化混合App的测试和自动化

背景:Hybrid App(混合模式移动应用)是指介于web-app、native-app这两者之间的app,兼具“Native App良好用户交互体验的优势”和“Web App跨平台开发的优势”。 什么是混合型应用(Hybrid App) 我们可以理解…

iPhone 16预售已开,沙漠金色最抢手,喜提新机后别忘了这件事!

9月13日20点,iPhone 16系列正式开启官方预购。今年全新的iphone16不仅新增相机按钮和AI功能,还增加了沙漠金配色。“加量不加价”的iPhone 16系列开售依旧火爆,iPhone 16系列开售1分钟内,苹果官方网站一度被消费者买到崩&#xff…

EasyExcel 快速入门

目录 一、 EasyExcel简介 官网链接: 代码链接: 二、 EasyExcel快速上手 引入依赖: 设置Excel相关注解 编写对应的监听类: 简单写入数据: 简单读取数据: 不需要使用监听器: 需要使…

U盘一打开就让格式化怎么办?教你快速解决方法

在日常生活和工作中,U盘已成为我们存储和传输数据的重要工具。然而,有时我们会遇到一个令人头疼的问题:当插入U盘后,电脑提示需要格式化才能使用。这时,我们该如何应对呢?本文将为大家详细介绍U盘提示格式化的原因及解…

野生动物检测系统源码分享

野生动物检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vis…

时序必读论文06|PITS : 基于非依赖策略学习时序patch特征表示

论文标题:LEARNING TO EMBED TIME SERIES PATCHES INDEPENDENTLY 下载地址:https://arxiv.org/pdf/2312.16427v1.pdf 开源代码:https://github.com/seunghan96/pits 前言 之前的文章我们读了Patch TST,建议大家阅读原论文&…

数据结构修炼——顺序表和链表的OJ题练习

目录 一、顺序表相关OJ题1 移除元素题目解析 2 合并两个有序数组题目解析 二、链表相关OJ题1 移除链表元素题目解析 2 反转链表题目解析 3 链表的中间结点题目解析 4 合并两个有序链表题目解析 5 链表的回文结构题目解析 6 相交链表题目解析 7 环形链表的判断题目解析 8 环形链…

共享单车轨迹数据分析:以厦门市共享单车数据为例(四)

副标题:共享单车与地铁接驳距离探究——以厦门市为例 关于轨道交通站点接驳范围的研究早已屡见不鲜,通常认为以站点为圆心、800米作为地铁站直接的服务范围是合理的。近年来,随着轨道、公交和慢行交通三网融合概念的提出,慢行交通…

9.第二阶段x86游戏实战2-初识易语言

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 工具下载: 链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd6tw3 提…

喜报 | 大势智慧荣获国家级专精特新重点“小巨人”企业荣誉称号

近日,湖北省经济和信息化厅发布了《关于2024年拟支持专精特新重点“小巨人”企业名单的公示》。武汉大势智慧科技有限公司(后简称“大势智慧”)凭借在实景三维AI领域的卓越技术表现和创新能力,成功上榜并通过公示期,荣…

预算不多怎么选一款开放式耳机?四款亲测好用的蓝牙耳机推荐

挑选开放式耳机可以从以下几个方面入手: 关注佩戴舒适度: 外观设计:开放式耳机有耳挂式、夹耳式等多种设计。耳挂式耳机通常佩戴较为稳固,适合运动时使用;夹耳式耳机相对轻便,但可能需要一定时间适应其佩…

多核DSP(6000系列)设计与调试技巧培训

​课程介绍: 为帮助从事DSP开发工程师尽快将DSP技术转化为产品,在较短时间内掌握DSP设计技术和问题的解决方法,缩短产品开发周期、增强产品竞争力、节省研发经费。我们特组织了工程实践和教学经验丰富的专家连续举办了多期DSP C6000的培训&a…

六氟化硫密度微水在线监测配套5孔M12格兰头航空插头插座

我们将为大家介绍如何使用六氟化硫密度微水在线监测配套5孔M12格兰头连接器。在本教程中,我们将向您展示简单易懂的步骤,让您轻松掌握。 所需材料: 1. 六氟化硫密度微水在线监测器 2. 5孔M12格兰头连接器 3. 电源线 4. 符合要求的电缆 5…

批量视频压缩需要怎么压缩?2024帮助你快速进行视频压缩的软件

批量视频压缩需要怎么压缩?2024帮助你快速进行视频压缩的软件 批量视频压缩是处理大量视频文件时常见的需求,特别是当你需要减小视频大小以便存储或上传时。以下是5款帮助你快速进行视频压缩的软件,它们操作简单,功能强大&#x…