自定义镜像

一、镜像结构

镜像是将应用程序及其需要的系统函数库、环境、配置、依赖打包而成。

镜像是分层结构,每一层称为一个Layer:

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

  层( Layer):在BaseImage基础上添加安装包、依赖、配置等,每次操作都形成新的一层。

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

 

二、Dockfile

Dockerfile就是一个文本文件,其中包含一个个的指令(Instruction),用指令来说明要执行什么操作来构建镜像。每一个指令都会形成一层Layer。

            

官网文档: https://docs.docker.com/engine/reference/builder

 当构建java项目镜像时,从安装jdk到配置环境变量等也都是构建其它java项目镜像时必须执行的。因此可以将这些公有的部分抽取为镜像,需要构建java镜像时就直接从共有部分构成的镜像构建如使用FROM命令 FROM  java:8-alpine  镜像构建java项目镜像。

 

Dockerfile的本质是一个文件,通过指令描述镜像的构建过程

Dockerfile的第一行必须是FROM,从一个基础镜像来构建

基础镜像可以是基本操作系统,如Ubuntu。也可以是其他人制作好的镜像,例如:java:8-alpine

 

posted @ 2023-06-23 20:44  佛系粥米  阅读(17)  评论(0编辑  收藏  举报