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. 9月22日内容总结——计算机五大组成部分详解、编程语言及发展史、python解释器安装与环境变量设置

    内容总结 目录 内容总结 一.计算机五大组成部分详细介绍 1.控制器 2.运算器 3.存储设备 4.输入设备 5.输出设备 二.计算机三大核心硬件 1. cpu 2.内存 举例:写文档时,突然关机了. ...

  2. MySQL-SQL语法、字段类型

    1.字符编码与配置文件 1.\s:查看当前MySQL相关信息:当前用户.版本.编码.端口号. """ Server characterset.Db characterse ...

  3. 如何使用 ArrayPool

    如果不停的 new 数组,可能会造成 GC 的压力,因此在 aspnetcore 中推荐使用 ArrayPool 来重用数组,本文将介绍如何使用 ArrayPool. 使用 ArrayPool Arr ...

  4. 推荐一个分布式单点登录框架XXL-SSO!

    有关单点登录(SSO)之前有写过两篇文章 一文读懂 JWT! 看完这篇不能再说不懂SSO原理了! 如果说XXL-JOB你可能并不陌生,它是非常火爆的一个分布式任务调度平台.但其实在该作者还有一个非常优 ...

  5. GMAC网卡相关介绍与分析

    GMAC网卡相关介绍与分析 目录 GMAC网卡相关介绍与分析 环境描述 MII MII RMII GMII RGMII SGMII GMAC网卡信息获取方法 获取GMAC网卡信息 查看PHY工作接口模 ...

  6. java环境变量配置-最新版

    安装 百度"java下载"进入官网下载最新版,闭着眼睛安装: 配置jre 因java11以上不自带jre,需要我们自己配置,配置如下: # 终端进入jdk所在的目录后执行 bin\ ...

  7. CF1742G Orray

    题目传送门 思路 大抵算是一道位运算入门题? 首先为了使 \(b_i\) 的字典序最大,我们注意到 \(b_1=a_1\),所以 \(a_1\) 必然是序列中最大的那个数. 接下来考虑贪心,设当前已经 ...

  8. webserver 简单demo

    以调用天气服务为例: 1.添加服务引用 2.点窗口做下角(高级->添加web引用->URL输入框输入天气服务地址(http://www.webxml.com.cn/WebServices/ ...

  9. Oracle 账户【2023/2/5最新】

    下载Oracle产品一般都需要登录Oracle账户才可以下载,这里提供一个账户方便大家使用,觉得有用的希望能点个小小的赞! 账号:191049742@qq.com 密码:1234qwerASDF!@# ...

  10. Shapefile导入MySQL

    1. 概述 Shapefile是常用的空间数据文件格式,MySQL是常用的关系型数据库 MySQL遵从OpenGIS联盟(OGC)的规范,MySQL实施了空间扩展,更详细的信息可以参考: MySQL ...