Dockerfile 部署java web的环境详解

作者:lqh 时间:2021-10-02 00:41:44 

Dockerfile 构建java web 环境

Dockfile 介绍:

Dockfile是一种被Docker程序解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令。Docker程序将这些Dockerfile指令翻译真正的Linux命令。Dockerfile有自己书写格式和支持的命令,Docker程序解决这些命令间的依赖关系,类似于Makefile。Docker程序将读取Dockerfile,根据指令生成定制的image。相比image这种黑盒子,Dockerfile这种显而易见的脚本更容易被使用者接受,它明确的表明image是怎么产生的。有了Dockerfile,当我们需要定制自己额外的需求时,只需在Dockerfile上添加或者修改指令,重新生成image即可,省去了敲命令的麻烦。

用dockerfile构建一个Java的web环境,主要分为2步,

第一步是在镜像中安装jdk并配置环境变量,

第二步是安装tomcat。

先贴一下完整的dockerfile


FROM ubuntu:14.04
MAINTAINER *** "***@******.com"
RUN apt-get update
ADD jdk-8u77-linux-x64.tar.gz /usr/local/java
ENV JAVA_HOME /usr/local/java/jdk1.8.0_77
ENV PATH $JAVA_HOME/bin:$PATH
ENV CLASSPATH .:$JAVA_HOME/lib
COPY apache-tomcat-8.0.33/ /usr/local/tomcat/apache-tomcat-8.0.33/
#RUN unzip /usr/local/tomcat/apache-tomcat-8.0.33.zip
RUN chmod +x /usr/local/tomcat/apache-tomcat-8.0.33/bin/*.sh
EXPOSE 8080
ENTRYPOINT /usr/local/tomcat/apache-tomcat-8.0.33/bin/startup.sh && /bin/bash

原始镜像是ubuntu14.04,然后将jdk的和tomcat的安装包放到和dockerfile相同的目录下。

这个Dockerfile还是比较简单的,jdk和tomcat也都是不需要编译的,都是解压即用,所以没什么特殊的地方。

Dockerfile编辑完了,就在Dockerfile所在的文件夹下构建镜像


docker build -t="redstarofsleep/javaweb" .

最后运行镜像,运行镜像的时候记得绑定端口


docker run -d -t -i -p 8081:8080 redstarofsleep/javaweb

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

来源:http://blog.csdn.net/redstarofsleep/article/details/53669003

标签:Dockerfile,java,web
0
投稿

猜你喜欢

  • github上的java项目怎么运行(面向小白)

    2022-12-23 23:29:09
  • java 学习笔记(入门篇)_多选择结构switch语句

    2023-02-04 11:35:59
  • Java权重随机的实现方法

    2021-10-05 14:27:50
  • 解析JavaSE的继承和多态

    2023-11-24 16:13:48
  • internal修饰符探索kotlin可见性控制详解

    2023-03-09 10:15:22
  • Java算法设计与分析分治算法

    2022-04-02 08:07:15
  • Android编程实现图片的颜色处理功能示例

    2022-10-08 23:15:25
  • Java字典生成算法讲解

    2023-11-25 00:17:29
  • Java编程泛型限定代码分享

    2023-11-09 17:46:32
  • Java数据结构之二叉排序树的实现

    2023-07-05 02:27:25
  • java课程设计做一个多人聊天室(socket+多线程)

    2022-10-31 08:11:54
  • Java并发CopyOnWrite容器原理解析

    2023-08-15 09:06:18
  • C#实现带消息数的App图标

    2022-03-08 11:30:52
  • Android如何实现非本地图片的点击态

    2023-06-16 00:21:16
  • c#多线程程序设计实例方法

    2023-07-24 16:39:28
  • struts2实现文件上传显示进度条效果

    2021-11-19 16:16:21
  • Android自定义钟表特效

    2022-09-11 00:29:14
  • C#使用Resources资源文件

    2023-07-04 08:42:48
  • Recyclerview添加头布局和尾布局、item点击事件详解

    2022-04-19 12:38:12
  • 详解Java中restTemplate的使用

    2023-06-19 23:20:29
  • asp之家 软件编程 m.aspxhome.com