1.新建一个spring boot项目

并使用maven打成jar包,放到linux(centos7)环境上。

运行 java -jar hello.jar  后结果如下(这里项目对外提供的端口是9090)

2.准备环境

新建一个目录hello,里面存放项目包(hello.jar)、运行环境(jdk8)和Dockerfile

Dockerfile内容如下

FROM centos  #指定基镜像 centos

MAINTAINER wzy  #指定维护者信息 wzy

COPY jdk8 jdk8  #复制jdk
ADD hello.jar myhello.jar #添加项目,并重命名为myhello.jar ENV JAVA_HOME=/jdk8 #配置jdk环境
ENV PATH=$JAVA_HOME/bin:$PATH
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar EXPOSE 9090 #暴露9090端口 ENTRYPOINT ["java","-jar","/myhello.jar"] #指定执行启动项目

3. 开始制作

docker build -t wzy/hello . (注意" . "是当前目录)

4.启动镜像

docker run -p 9090:9090 -d wzy/hello

访问结果如下(若访问不到,可能是没有开放端口,或者关闭防火墙就可以了)

systemctl stop firewalld.service # 关闭firewall
systemctl disable firewalld.service # 禁止firewall开机启动

  

  

  

  

  

  

docker把web jar包制作成镜像的更多相关文章

  1. Docker将容器制作成镜像并提交到远程仓库

    Docker将容器制作成镜像并提交到远程仓库 步骤如下 先在dockerhub上创建一个自己的用户https://hub.docker.com/.或者在阿里云也可以. 2. 然后先创建一个空的镜像名. ...

  2. Spring Boot由jar包转成war包

    Spring Boot由jar包转成war包 spring boot 默认是以jar包形式启动web程序,在新建spring boot项目时候可以选择war包的启动方式. 建议在开发的时候建立以jar ...

  3. Eclipse - JAR包制作细节

    Eclipse - JAR包制作细节   1.Jar包分为两种,一种是不可运行的,一种是可运行的Jar包,他们的主要区别如下:     > 不可直接运行的Jar包主要是用于给别的程序提供调用   ...

  4. Jar包转成Dll的方式(带嵌套的jar也能做) (转)

    研究很好几天,终于成功了.因为写了一个Java的项目,现在要求要改写成C#版本的.但是其中用到了svnkit,svnkit是java平台的.改写成C#的话,要使用SharpSVN,但是SharpSVN ...

  5. Jar包转成Dll的方式(带嵌套的jar也能做)

    研究很好几天,终于成功了.因为写了一个Java的项目,现在要求要改写成C#版本的.但是其中用到了svnkit,svnkit是java平台的.改写成C#的话,要使用SharpSVN,但是SharpSVN ...

  6. spring boot将jar包转换成war包发布

    spring boot将jar包转换成war包发布步骤 将<packaging>jar</packaging>修改为<packaging>war</packa ...

  7. jar包打包成exe示例(基于maven项目)

    jar包打包成exe示例(基于maven项目) 说明 针对基于maven的Java项目,通常会打包成jar, 如果要把jar文件包装成exe文件,仅需要在pom.xml配置文件中增加一个插件即可 这里 ...

  8. Eclipse - JAR包制作

    Eclipse - JAR包制作细节   1.Jar包分为两种,一种是不可运行的,一种是可运行的Jar包,他们的主要区别如下:     > 不可直接运行的Jar包主要是用于给别的程序提供调用   ...

  9. Java Service Wrapper将jar包安装成Windows服务

    刚接触java,第一次使用Java开发windows服务,也是刚不久看了SSM框架 简直也是一头雾水,不过只要用心理解,其实很简单,下面有详细的步骤,包学包会 在windows上运行jar包,需要在工 ...

随机推荐

  1. Mysql覆盖索引与延迟关联

    延迟关联:通过使用覆盖索引查询返回需要的主键,再根据主键关联原表获得需要的数据.   为什innodb的索引叶子节点存的是主键,而不是像myisam一样存数据的物理地址指针? 如果存的是物理地址指针不 ...

  2. appfog 使用

    1.需要安装ruby 和 devkit The RubyInstaller Development Kit (DevKit) is a MSYS/MinGW based toolkit than en ...

  3. 在一台server上部署多个Tomcat

    版权声明: https://blog.csdn.net/u011518709/article/details/27181665 在一台server上配置多个Tomcat的方法: 这几天因为在研究OGS ...

  4. centos shell编程5 LANMP一键安装脚本 lamp sed lnmp 变量和字符串比较不能用-eq cat > /usr/local/apache2/htdocs/index.php <<EOF重定向 shell的变量和函数命名不能有横杠 平台可以用arch命令,获取是i686还是x86_64 curl 下载 第三十九节课

    centos shell编程5  LANMP一键安装脚本 lamp  sed  lnmp  变量和字符串比较不能用-eq  cat > /usr/local/apache2/htdocs/ind ...

  5. CentOS7系统上部署.net core程序

    一.准备工作 首先安装 xshell 和 xftp ,前者用于SSH连接Linux服务器,后者用于FTP上传下载文件. xshell和xftp个人使用是免费的,下载地址 之后分别输入用户名和密码登录主 ...

  6. 表单验证—html5新特性表单验证

    一.表单 <body> <section id="register"> <div><img src="images/logo.j ...

  7. python中的shallow copy 与 deep copy

    今天在写代码的时候遇到一个奇葩的问题,问题描述如下: 代码中声明了一个list,将list作为参数传入了function1()中,在function1()中对list进行了del()即删除了一个元素. ...

  8. hdu5184 数论证明

    这题说的给了一个整数n 和一串的括号, 那么要我们计算 最后有n/2对括号的 方案数有多少. 我们可以先预先判断一些不可能组成正确括号对的情况, 然后我们可以将这个问题转化到二维平面上, 令 m = ...

  9. Python笔记 #12# Dictionary & Pandas: Object Creation

    Document of Dictionaries 10 Minutes to pandas tutorialspoint import pandas as pd data = [['Alex',10] ...

  10. 经查-- git使用报错及解决办法

    git push 错误 error: failed to push some refs to 'git@github.com:charblus/ ...' 本地和远程的文件应该合并后才能上传本地的新文 ...