Dockerfile
1、Dockerfile是什么
定义:就是镜像的描述文件
2、Dockerfile作用
作用:通过Dockerfile文件构建一个属于自己的镜像
3、如何通过Dockerfile构建自己的镜像
a、在指定位置创建一个Dockerfile文件,按照官方语法配置
b、docker build -t aa:1.0.(指定Dockerfile文件所在的位置) aa就是镜像名称
5、Dockerfile构建镜像流程
要求:在Dockerfile里边,一行只可以写一条完整的命令
1、
2、
3、
.....
每执行一行,都会将这步放入Dockerfile的缓存中,修改之后,若是这行没被修改会直接去缓存中获取。
FROM 当前镜像是基于哪个镜像的
MAINTAINER 创建者
RUN 构建镜像时需要的指令,可写入命令
EXPORT 当前容器对外暴漏出的端口号
WORKDIR 指定在创建文件后,终端默认登录进来的工作目录,一个落脚点
ENV 用来在构建镜像过程中设置环境变量。
ADD 将宿主机目录下的文件拷贝进镜像,且ADD命令会自动处理URL和解压tar文件
COPY 类似ADD,拷贝文件和目录到镜像中。将从构建上下文目录<源路径>的文件/目录复制到新的一层的镜像内<目标路径>位置。
VOLUMN 容器数据卷,用于数据保存和持久化工作。允许run的时候进行挂载的目录
CMD 指定容器启动时要运行的命令。DockerFile中可以有多个CMD指令,但只有最后一个生效(覆盖),CMD会被docker run 之后的参数替换
ENTRYPOINT 指定容器启动时要运行的命令。ENTRYPOINT的目的和CMD一样,都是在指定容器启动程序以及参数(但是不会被覆盖)
6、使用Dockerfile构建spring boot应用
1、将spring boot项目打成jar包,
2、创建应用目录,并作为Dockerfile上下文目录, mkdir dorm_Dockerfile
3、进入dorm_Dockerfile目录,创建Dockerfile文件
4、上传应用jar包到dorm_Dockerfile目录,
5、Dockerfile文件
6、执行构建 docker build -t dorm:01 . "."代表Dockerfile的上下文目录
7、运行容器
docker run -d --name dorm01 -p 8081:8081 dorm:01
Dockerfile文件