一、创建Dockerfile
注意:该镜像是一个springboot项目,docker底层是需要依赖一个jdk
###依赖jdk,版本为11
FROM openjdk:11
###创建人
MAINTAINER Zyred
###标签信息
LABEL name="dockerfile-demo" version="0.1" author="Zyred"
###此处不详解,后续
COPY dockerfile-0.0.1-SNAPSHOT.jar dockerfile-image.jar
###运行Linux命令启动jar包,可以携带jvm参数
CMD ["java","-jar","dockerfile-image.jar"]
1、在服务器上home目录下创建docker-first文件
2、docker-first加入创建完毕的Dockerfile文件,并且在此目录下添加需要运行的jar包 "dockerfile-image.jar"
3、运行docker中构建镜像命令
docker build -t first-dockerfile .
4、启动镜像,得到名字为“first-dockerfile”的container
docker run -d --name first-dockerfile -p 8080:8080 first-dockerfile
二、dockerfile详解
1、FROM
指定将要创建的docker镜像底层需要依赖什么镜像,例如tomcat底层是需要依赖jdk的,从官网中可以查看
地址:https://github.com/docker-library/tomcat/blob/master/8.5/jdk8/openjdk/Dockerfile
2、LABEL
设置镜像标签
3、MAINTAINER
创建人信息
4、COPY
将主机的文件复制到镜像内,如果目录不存在,会自动创建所需要的目录,注意只是复制,不会提取和解压
在dockerfile中,我创建了docker-first文件,在此文件中保存了Dockerfile和所需要的jar,所以,COPY命令直接从当前路径复制即可,如果在不同的路径,则需要完整路径
5、CMD
容器启动的时候默认会执行的命令,若有多个CMD命令,则最后一个生效