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 .

查看当前镜像

docker images

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

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

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

docker ps -a

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

# 停止容器
docker stop 容器名(或id)
# 删除容器
docker rm 容器名(或id)
# 删除镜像
docker rmi 镜像名:版本号(或id)

docker学习(dockerfile打jar包为镜像)的更多相关文章

  1. 如何使用dockerfile将jar包生成镜像

    1.编写dockersfile FROM java:8 ADD SPRINGCLOUD.jar app.jar RUN bash -c ‘touch /app.jar’ ENTRYPOINT [&qu ...

  2. Docker部署web项目-jar包

    一.Docker部署web项目-jar包 ①搜索mysql镜像 docker search mysql ②拉取镜像至本地仓库(本文选取的mysql镜像5.7版本) docker pull mysql/ ...

  3. Java学习-039-源码 jar 包的二次开发扩展实例(源码修改)

    最近在使用已有的一些 jar 包时,发现有些 jar 包中的一些方法无法满足自己的一些需求,例如返回固定的格式,字符串处理等等,因而需要对原有 jar 文件中对应的 class 文件进行二次开发扩展, ...

  4. Docker Alpine Dockerfile 安装nginx,最小镜像

    Docker Alpine Dockerfile 安装nginx,最小镜像 FROM alpine MAINTAINER will ## 将alpine-linux:apk的安装源改为国内镜像 RUN ...

  5. 【docker】将Java jar文件生成镜像、上传镜像并生成镜像压缩文件

    概述 将Springboot的web服务打包成Jar包后,自动化脚本将jar打包成镜像.上传镜像.并生成镜像的压缩文件: Dockerfile FROM 10.254.9.21/library/ora ...

  6. Docker学习——Dockerfile

    上一篇我们讲了docker的基本使用,掌握了前一篇,docker使用基本不成问题,但是要是你学习了Dockerfile,你会发现它使用起来有多方便了.项目最终部署时,我们希望docker容器打开时项目 ...

  7. 将java的项目jar包打成镜像

    一.镜像.容器相关知识的概述 Docker 镜像 docker镜像是一个特殊的文件系统,除了提供容器运行时所需的程序.库.资源.配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷.环境变量 ...

  8. docker配置容器运行jar包

    拉取jdk镜像文件 # docker pull huanwei/alpine-oraclejdk8 创建文件夹编写Dockerfile文件 # mkdir docker # vi Dockerfile ...

  9. Docker进阶-Dockerfile建立一个自定义的镜像执行自定义进程

    前言 docker对我来说是一个很方便的工具,,上一篇文章也写了docker基本的一些使用,这篇文章重点描述一下Dockerfile的使用,从零建立一个自己定制化的镜像,并可以执行我们需要的任务. 作 ...

  10. Docker学习笔记之保存和共享镜像

    0x00 概述 让 Docker 引以为傲的是它能够实现相比于其他虚拟化软件更快的环境迁移和部署,在这件事情上,轻量级的容器和镜像结构的设计无疑发挥了巨大的作用.通过将容器打包成镜像,再利用体积远小于 ...

随机推荐

  1. VSCode一键接入Notebook体验算法套件快速完成水表读数

    摘要:本示例围绕真实AI需求场景,介绍VSCode一键接入Notebook体验算法套件快速完成水表读数的使用流程. 本文分享自华为云社区<VSCode一键接入Notebook体验算法套件快速完成 ...

  2. python学习第八周总结

    多进程实现TCP服务端并发 之前我们学习了用socket模块进行文字以及文件的传输,但是之前的操作一个服务端只能与一个客户端进行交互,如果要想实现多个客户端与服务端交互的并发效果,我们需要进行如下操作 ...

  3. elasticsearch-head-master安装

    1 简介 elasticsearch-head是一款专门针对于elasticsearch的客户端工具,elasticsearch-head是一个基于node.js的前端工程 2 依赖 需要安装node ...

  4. Vue14 条件渲染

    转:https://blog.csdn.net/weixin_57519185/article/details/121168426 1 简介 通过指令v-show和v-if可以实现条件渲染. 它们都能 ...

  5. JAVA虚拟机05-内存溢出示例(jdk1.8)

    1.JAVA虚拟机堆内存溢出OutOfMemoryError 1.1设置参数 -Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError 最小堆的大小20m 最大堆 ...

  6. CentOS安装mysql、MariaDB以及更改数据库存储路径

    注意:此方法只适用于新的机器或没有重要数据库表(可随意删除)的机器安装,如需升级版本参考下方链接!!! https://www.jianshu.com/p/955ff6065935 一.安装操作 1. ...

  7. JuiceFS 在火山引擎边缘计算的应用实践

    火山引擎边缘云是以云计算基础技术和边缘异构算力结合网络为基础,构建在边缘大规模基础设施之上的云计算服务,形成以边缘位置的计算.网络.存储.安全.智能为核心能力的新一代分布式云计算解决方案. 01- 边 ...

  8. java2022.7.9

    知识点

  9. TEMPO研究第一年影像学数据: 骨侵蚀修复几乎只出现在无关节肿胀或肿胀改善组

    标签: TEMPO研究; 依那西普; 放射学进展; 类风湿关节炎 TEMPO研究第一年影像学数据: 骨侵蚀修复几乎只出现在无关节肿胀或肿胀改善组 EULAR2007. Abstract No: OP0 ...

  10. h5项目自适应字体和宽高。用rem

    已知: 1.浏览器默认的字号是16px,html{font-size: 87.5%;}(16*0.875 = 14px). 2.css中的单位换算:rem 与 px 的换算为 px = rem * 设 ...