Dockerfille解析

用于构建Docker镜像的文本,由一条条指令构成

Docker执行Dockerfile的流程

  1. Docker从基础镜像执行一个容器

  2. 执行一条指令并对容器进行修改

  3. 执行类型Docker commit的命令添加一个新的镜像层

  4. Docker再基于新的镜像执行一个新的容器

  5. 执行Dockerfile中的下一条命令直至指令结束

关键字

|------------|----------------------------------|
| FROM | 指定基础镜像 |
| RUN | 执行构建的命令 |
| ENTRYPOINT | 指定镜像的默认入口以及运行命令 |
| CMD | 启动容器时的命令 |
| ENV | 指定环境变量 |
| ADD | 复制指定的 src 路径下的内容到容器中的 dest 路径下 |
| COPY | 复制本地主机的 src 路径下的内容到镜像中的 dest 路径下 |
| VOLUME | 创建数据卷挂载点 |
| WORKDIR | 配置工作目录 |
| EXPOSE | 声明镜像内服务监听的端口 |

自定义镜像

案例:将一个springboot的jar包部署到Docker上

  1. 打包springboot项目

  2. 在linux中创建一个文件夹用于保存Dockerfile文件和jar包

  3. 创建Dockerfile文件

FROM java:8

ADD /springbootApplication.jar springbootApplication.jar

EXPOSE 8088

CMD java -jar springbootApplication.jar

  1. 保存文件

docker build -t springbootApplication .

  1. 运行自定义的镜像

docker run -d -p 8088:8088 \

--name news8088 \

--restart=always

\ springbootApplication

相关推荐
by__csdn1 分钟前
第一章 (ASP.NET Core入门)第三节( 认识.NET Standard)
后端·c#·asp.net·.net·.netcore·f#·vb.net
数据小馒头5 分钟前
生成测试数据(一):分钟级构建百万级数据,测试数据库性能
后端
helloworld工程师8 分钟前
Dubbo应用开发之基于Dubbo协议的springboot规范性开发
spring boot·后端·dubbo
码途进化论12 分钟前
前端Docker多平台构建自动化实践
前端·javascript·后端
悟空码字13 分钟前
SpringBoot 整合 RabbitMQ:和这只“兔子”交朋友
java·后端·rabbitmq
BingoGo16 分钟前
万物皆字符串 PHP 中的原始类型偏执
后端·php
Carve_the_Code17 分钟前
订单ID容量升级:从40位到64位的架构演进
后端
一粒麦仔17 分钟前
物联网的低功耗守望者:全面解析Sigfox技术
后端·网络协议
Frank_zhou18 分钟前
192_如何基于复杂的指针移动完成单向链表的入队?
后端
Frank_zhou21 分钟前
03_ArrayList核心方法的原理
后端