【Docker】DockerFile

news/2024/12/23 5:25:24/

目录

一、镜像原理

二、如何制作镜像

1、容器转镜像

2、DockerFile

三、DockerFile关键字​编辑

四、案例:部署SpringBoot项目


一、镜像原理

docker镜像是由一个特殊的文件系统叠加而成的,他的最低端是bootfs,并使用宿主机的bootfs,第二层是root文件系统rootfs,称为base image,然后在往上可以叠加其他镜像文件;当从一个镜像启动容器时,docker会在最顶层叠加一个读写文件系统作为容器

二、如何制作镜像

1、容器转镜像

首先我们可以线将容器转为镜像

docker commit 容器id 镜像名:版本号

然后将镜像转为压缩文件

docker save -o 压缩文件名 镜像名:版本号 

最后将压缩文件发送给测试人员进行测试

docker load -i 压缩文件名

这种方式通过挂载的文件在进行commit时是不被包含的

2、DockerFile

首先什么是dockerfile?他是一个文本文件,包含许多指令,每一条指令构建一层,基于基础镜像最终构建出一个新的镜像。对于开发人员他为团队提供了一致的开发环境;对于测试人员,它可以通过dockerfile构建出与开发时相同的环境;对于运维人员在部署项目时可以实现应用的无缝衔接。那么如何使用dockerfile创建容器呢?在下面的案例中会提到

三、DockerFile关键字

四、案例:部署SpringBoot项目

项目是一个简单的SpringBoot项目,当我们访问/test/hi 接口时浏览器就会显示Hello Docker

首先我们需要将项目打包上传到Linux服务器,然后开始编辑dockerFile文件

vim dockerfile

其中内容,其中的springboot.jar是项目打包后的名字

FROM java:8ADD springboot.jar app.jarcmd java -jar app.jar

然后通过以下命令创建镜像

docker build -f  【dockefile的路径】 -t  镜像名:版本 .  # 最后有一个空格.

当镜像创建好后我们可以启动一个容器然后访问IP:8080/test/hi 就可以测试是否成功了 


http://www.ppmy.cn/news/1011720.html

相关文章

Java电子招投标采购系统源码-适合于招标代理、政府采购、企业采购、等业务的企业tbms

​ 功能描述 1、门户管理:所有用户可在门户页面查看所有的公告信息及相关的通知信息。主要板块包含:招标公告、非招标公告、系统通知、政策法规。 2、立项管理:企业用户可对需要采购的项目进行立项申请,并提交审批,查…

暗黑版GPT流窜暗网 降低犯罪门槛

随着AIGC应用的普及,不法分子利用AI技术犯罪的手段越来越高明,欺骗、敲诈、勒索也开始与人工智能沾边。 近期,专为网络犯罪设计的“暗黑版GPT”持续浮出水面,它们不仅没有任何道德界限,更没有使用门槛,没有…

Java方法重写

目录 1.什么是方法重写 2.方法重写的规则 3.重写与重载的区别 1.什么是方法重写 重写(override,也称为覆盖):在子类中对父类中允许访问的方法的实现过程进行重新编写,子类中方法的名称、返回值类型、参数列表与父类…

BenchmarkSQL 支持 TiDB 驱动以及 tidb-loadbalance

作者: GangShen 原文来源: https://tidb.net/blog/3c274180 使用 BenchmarkSQL 对 TiDB 进行 TPC-C 测试 众所周知 TiDB 是一个兼容 MySQL 协议的分布式关系型数据库,用户可以使用 MySQL 的驱动以及连接方式连接 TiDB 进行使用&#xff0…

IAR开发环境的安装、配置和新建STM32工程模板

IAR到环境配置到新建工程模板-以STM32为例 一、 简单介绍一下IAR软件1. IAR的安装(1) 下载IAR集成开发环境安装文件(2) 安装 2. 软件注册授权 二、IAR上手使用(基于STM32标准库新建工程)1、下载标准库文件2、在IAR新建工程&#x…

有了net/http, 为什么还要有gin

1. 简介 在Go语言中,net/http 包提供了一个强大且灵活的标准HTTP库,可以用来构建Web应用程序和处理HTTP请求。这个包是Go语言标准库的一部分,因此所有的Go程序都可以直接使用它。既然已经有 net/http 这样强大和灵活的标准库,为什…

生成式AI+RPA数字员工,赋能行业模型深度应用

在数字技术日益发达的今天,一种新型生产力正在数字经济时代崭露头角——“RPA数字员工”。其具备高效、精准、可靠的工作能力,可以帮助企业将繁琐、重复的工作自动化,从而提高生产效率和降低成本,正在逐渐成为推动“新生产力”的重…

Spring Boot如何整合mybatis

文章目录 1. 相关配置和代码2. 整合原理2.1 springboot自动配置2.2 MybatisAutoConfiguration2.3 debug过程2.3.1 AutoConfiguredMapperScannerRegistrar2.3.2 MapperScannerConfigurer2.3.4 创建MapperFactoryBean2.3.5 创建MybatisAutoConfiguration2.3.6 创建sqlSessionFact…