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

相关推荐
fengxin_rou3 分钟前
黑马点评实战篇|第五篇:分布式锁-redission
java·数据库·redis·后端·缓存
tsyjjOvO4 分钟前
Spring 核心知识点全解析(续)
java·后端·spring
廋到被风吹走11 分钟前
【Spring AI】Java 开发者构建企业级大模型应用(RAG/Agent)的官方一站式框架
java·人工智能·spring
马猴烧酒.16 分钟前
【JAVA算法|hot100】贪心算法类型题目详解笔记
java·开发语言·ide·笔记·算法·spring·贪心算法
语戚16 分钟前
深入浅出 AOP:织入时机、JDK 动态代理与 CGLIB 原理及 Spring 选择策略
java·开发语言·spring·jdk·代理模式·aop·动态代理
vx-程序开发19 分钟前
springboot具备推荐和预警机制的大学生兼职平台的设计与实现-计算机毕业设计源码17157
java·c++·spring boot·python·spring·django·php
shamalee31 分钟前
Spring Security 新版本配置
java·后端·spring
理想小青年1 小时前
保姆级 OpenClaw 浏览器配置教程
后端
常利兵1 小时前
Spring Boot接口版本控制:解锁API优雅升级姿势
spring boot·后端·状态模式
C++chaofan1 小时前
JUC 并发编程:对可见性、有序性与 volatile的理解
java·开发语言·spring·java-ee·juc·synchronized·