设为首页 加入收藏

TOP

docker学习(dockerfile打jar包为镜像)
2023-07-25 21:40:07 】 浏览:39
Tags:docker 学习 dockerfile jar 包为镜

docker打包jar为docker镜像

1、使用Dockerfile打镜像

将spring boot应用打包成jar包放置在/app/applcation路径中

编写dockerfile文件,内容参考如下:

# Docker image for springboot file run
# VERSION 0.0.1
# Author: yanjl
# 基础镜像使用java
FROM s390x/adoptopenjdk:8u292-b10-jdk-openj9-0.26.0
# 作者
MAINTAINER yanjl <yanjlxue@outlook.com>
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /app/application 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /app/application
# 将jar包添加到容器中并更名为hello.jar #前者为打包的文件 后者为修改后的自定义名字
ADD /app/application/hello.jar /app/application/hello.jar
# 运行jar包
RUN bash -c 'touch /app/application/hello.jar'
# -Djava.security.egd=file:/dev/./urandom为指定随机数生成器,可加快启动
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app/application/hello.jar"]
# 暴露端口
EXPOSE 8099

项目需要java环境,可以根据自己的操作系统选择合适的jdk,可以再dockerhub官方仓库查询对应的镜像,

挂载卷可以将容器内信息映射到宿主机中,方便查阅

构建镜像,命令最后有一个点,表示当前目录,-f为指定dockerfile,-t命名镜像

docker build -f Dockerfile -t hello:1001 .

image-20230303094820930

查看当前镜像

docker images

image-20230303093408909

启动容器,可以使用docker logs hello 查看日志输出,-p参数表示端口映射(宿主机端口:容器内端口,-d为指定镜像文件)

docker run -p 8099:8099 -d hello:1001 --name hello

使用docker ps -a查看当前容器运行状态,-a参数表示查看所有容器(包括已终止),不加则只会显示运行中容器

docker ps -a

image-20230303093331157

若要删除镜像,需要先停止容器,再删除容器,再删除镜像即可

# 停止容器
docker stop 容器名(或id)
# 删除容器
docker rm 容器名(或id)
# 删除镜像
docker rmi 镜像名:版本号(或id)
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Redis分布式锁常见坑点分析 下一篇OpenAI Java SDK——chatgpt-java..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目