脚本宝典收集整理的这篇文章主要介绍了java-SpringBoot配置Dockerfile,打包镜像全过程以及Dockerfile基础命令介绍,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
Dockerfile由4部分组成:
1) 基础镜像信息:From :
2)维护者信息:LABEL maintainer="1091173065@QQ.COM"
3)镜像操作指令:RUN cp -r /VAR/lib/MySQL /var/lib/mySQL-no-volume
4)容器启动指令:CMD ["--datadir", "/var/lib/mysql-no-volume"]
注意:基础镜像信息可以写多个From指令来构建复杂的镜像
Dockerfile指令
FROM:指定制作的镜像继承自那个镜像
格式:
FROM <image>
FROM <image>:<tag>
FROM <image>:<digest>
LABEL maintainer:用来指定维护者信息
格式:LABEL maintainer="1091173065@qq.com"
RUN:执行shell命令
格式:
1. RUN <command> #后边直接跟shell命令
2. RUN ["executable", "param1", "param2"]#类似于函数调用。
ExpOSE:暴露容器中的端口号,也可通过“docker run -p”进行映射。
格式:EXPOSE
CMD:只存在一个,
1. CMD ["executable","param1","param2"]
2. CMD ["param1","param2"]
3. CMD command param1 param2
ENTRYPOINT:Dockerfile只能存在一个该指令,当指定多个时,最后一个有效。
1. ENTRYPOINT ["executable", "param1", "param2"]
2. ENTRYPOINT command param1 param2
VOLUME:创建一个可以从本地主机或其他容器挂载的挂载点,一般用来存放数据库或需要永久保存的数据。
docke run -v $HostPath:$ContainerPath #常用指令
VOLUME ["/data"]
env:指定环境变量,会被后续RUN指令使用,并在容器运行时保持。
1. ENV <key> <value> #1个环境
2. ENV <key>=<value> ...#多个环境
ADD:复制命令,把文件复制到镜像中。
1. ADD <src>... <dest>
2. ADD ["<src>",... "<dest>"]
COPY:复制本地的src(为Dockerfile所在目录的相对路径)到容器中的dest。当使用本地目录为源目录是推荐使用COPY。
1. COPY <src>... <dest>
2. COPY ["<src>",... "<dest>"]
java-SpringBoot配置Dockerfile,打包镜像全过程。
1、Spring项目打包:IDEA选择右侧的【Maven】-【projectName】-【lifecycle】-【package】,打包好的jar将存储在target下xxxxx.jar 2、编写Dockerfile
# 该镜像需要依赖的基础镜像
FROM oPEnjdk:8
# 指定维护者名称
MAINTAINER hcx 1091173065@qq.com
# 将targer目录下的jar包复制到docker容器/home/springboot目录下面目录下面
ADD ./target/core242-0.0.1-SNAPSHOT.jar /home/springboot/core242-0.0.1-SNAPSHOT.jar
# 声明服务运行在8080端口
EXPOSE 8080
# 执行命令
CMD ["java","-jar","/home/springboot/core242-0.0.1-SNAPSHOT.jar"]
3、将项目上传至服务器,进行docker build
docker build -t containerName(自定义):tag(自定义) .
#注意最后的 . 一定要有
#完成构建后可以使用命令dokcer images查看build完的镜像
4、启动构建完成的镜像
docker run -d -p 8080:8080 --name customName containerName:tag
#启动后可以使用docker ps -a查看容器状态,是否能够正常使用,如果未正常启动就需要自行检查配置的过程中是否出现失误,例如Dockerfile中的CMD或者ADD的文件路径是否正确等。
以上是脚本宝典为你收集整理的java-SpringBoot配置Dockerfile,打包镜像全过程以及Dockerfile基础命令介绍全部内容,希望文章能够帮你解决java-SpringBoot配置Dockerfile,打包镜像全过程以及Dockerfile基础命令介绍所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。