Docker——自定义镜像
创始人
2024-03-26 18:05:56
0

目录

一、镜像结构

二、Dockerfile

 2.1 案例:基于Ubuntu镜像构建一个新镜像,运行一个java项目

   2.1.1 新建文件夹docker-demo

   2.1.2 拷贝docker-demo.jar到docker-demo

   2.1.3 将jdk8.tar.gz文件放到docker-demo目录

   2.1.4 将Dockerfile移动到docker-demo

   2.1.5 进入docker-demo

   2.1.6 构建镜像并运行

  2.2  java:8-alpine镜像,将一个Java项目构建为镜像

三、总结


我们自己的服务一定要自己制作镜像,基于dockerfile自己定义镜像

一、镜像结构

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

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

Entrypoint:入口,是镜像中应用启动的命令

其他:在BaseImage基础上添加依赖、安装程序、完成整个应用的安装和配置

二、Dockerfile

下面开始自定义镜像

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

 2.1 案例:基于Ubuntu镜像构建一个新镜像,运行一个java项目

  2.1.1 新建文件夹docker-demo

       放构建镜像所需要的资料

   2.1.2 拷贝docker-demo.jar到docker-demo

   2.1.3 将jdk8.tar.gz文件放到docker-demo目录

   2.1.4 将Dockerfile移动到docker-demo

          我们构建整个项目是基于Ubuntu镜像(这个镜像是干干净净的基础镜像,什么也没有)来做的,在这个的过程中主要是来安装jdk

 

   2.1.5 进入docker-demo

发现已经有了

   2.1.6 构建镜像并运行

 build:构建的意思

 -t :全名是-tag

 javaweb:我们起的一个名称,后面的1.0是版本,我们可以随便取

  . :dockerfile所代表的的目录 

 注意后面别忘了有一个点。  这个点是“  .” 前面有一个空格

 

跑起来

192.168.174.100 是我们虚拟机的静态地址   8090是我们配置的端口号   后面是路径

  2.2  java:8-alpine镜像,将一个Java项目构建为镜像

我们实现了上面这个文档,发现还是挺麻烦的

在刚刚的步骤中,只有下图框起来的是构架java项目的,因为java项目不需要安装

除了框起来的这句和最下面的两行,其余的都是安装jdk

我们的每一个项目都不需要执行上面完整的流程,在配置中,下面这些选中的不会改变,我们可以把这些构建好做一个镜像先放到那里,以后都在这个基础上进行构建,这就是分层的好处

 

然后java:8-alpine镜像就替我们做了这个东西,他是一个体积非常小的一个jdk镜像,如果我们构建项目的时候是以他为基础,则上面我们选中的都不用做了

将dockerfile文件修改成下面这个样子

 

 

我们来实验一下

 

三、总结

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

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

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

相关内容

热门资讯

AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...