当前位置: 首页 > ops >正文

Docker自定义镜像

自定义镜像

镜像就是包含了应用程序,程序运行的系统函数库,运行配置等文件的文件包,构建镜像的过程其实就是把上述文件打包的过程

部署一个Java应用的步骤:

  1. 准备一个Linux服务器
  2. 安装JRE并配置环境变量
  3. 拷贝Jar包
  4. 运行Jar包

构建一个Java镜像的步骤:

  1. 准备一个Linux运行环境
  2. 安装JRE并配置环境变量
  3. 拷贝Jar包
  4. 编写运行脚本

这四步都会产生文件,Docker在制作镜像的时候,不是把每一步产生的文件最终合并在一起打成一个包作为镜像的,而是会把每一步操作产生的这些文件分别打成压缩包作为镜像的一部分,最终合在一起才是完整的镜像

Docker镜像是由很多压缩包合并而成的

添加安装包、依赖、配置等,每次操作都形成新的一层

基础镜像(BaseImage)
应用依赖的系统函数库,环境,配置,文件等

入口(Entrypoint)
镜像运行入口,一般是程序启动的脚本和参数

在这里插入图片描述

Dockerfile

Dockerfile就是一个文本文件,其中包含一个个的指令,用指令来说明要执行什么操作来构建镜像,将来Docker可以根据Dockerfile帮我们构建镜像,常见指令如下

在这里插入图片描述

当编写好Dockerfile,可以利用下面命令来构建镜像

docker build -t myImage:1.0 .

-t:是给镜像起名,格式依然是repository:tag的格式,不指定tag时,默认为latest
.:是指定Dockerfile所在目录,如果就在当前目录,则指定为"."

http://www.xdnf.cn/news/17893.html

相关文章:

  • 自动驾驶中的传感器技术24.1——Camera(16)
  • 算法训练营day53 图论④ 110.字符串接龙、105.有向图的完全可达性、106.岛屿的周长
  • Conda创建py3.10环境(股票),并且安装程序包的命令
  • 元宇宙教育:打破时空限制的学习革命
  • 汽车大灯ABD算法介绍
  • SpringAI中的模块化链式Advisor调用(源码学习)
  • B3865 [GESP202309 二级] 小杨的 X 字矩阵(举一反三)
  • Linux 多线程:线程回收策略 线程间通信(互斥锁详解)
  • linux下程序运行一段时间无端崩溃/被杀死,或者内存占用一直增大。linux的坑
  • Docker in Test:用一次性的真实环境,终结“测试永远跑不通”魔咒
  • 集成运算放大器(反向比例,同相比例)
  • C++实战
  • 静态库和动态库
  • 【leetcode】5 最长回文子串 动态规划法
  • Protues使用说明及Protues与Keil联合仿真实现点亮小灯和流水灯
  • 【Docker项目实战】使用Docker部署Notepad轻量级记事本
  • 【基础-判断】HarmonyOS提供了基础的应用加固安全能力,包括混淆、加密和代码签名能力
  • 数据结构 实现循环队列的三种方法
  • 如何在 MacOS 上安装 SQL Server
  • 搭建ktg-mes
  • 新手向:Python列表、元组、集合和字典的用法对比
  • MySQL的三大范式:
  • AI云电脑盒子技术分析——从“盒子”到“算力云边缘节点”的跃迁
  • 实现Android图片手势缩放功能的完整自定义View方案,结合了多种手势交互功能
  • Vue 3.5重磅更新:响应式Props解构,让组件开发更简洁高效
  • MQ积压如何处理
  • Markdown 生成 Gantt 甘特图
  • 使用js完成抽奖项目 效果和内容自定义,可以模仿游戏抽奖页面
  • 31 HTB Union 机器 - 中等难度
  • C:\Windows\WinSxS 目录详解