docker安装jdk+tomcat环境镜像

  • 编写Dockerfile
From centos:7
MAINTAINER niejian@bluemoon.com.cn
# OS 环境配置
RUN yum install -y wget
#下载JDK并安装
RUN mkdir -p /var/tmp/jdk
RUN wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"  -P  /var/tmp/jdk http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz
RUN tar zxvf /var/tmp/jdk/jdk-8u181-linux-x64.tar.gz -C /var/tmp/jdk && rm -rf /var/tmp/jdk/jdk-8u181-linux-x64.tar.gz
## 安装tomcat
RUN mkdir /var/tmp/tomcat
RUN wget -P /var/tmp/tomcat http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.34/bin/apache-tomcat-8.5.34.tar.gz
RUN tar zxvf /var/tmp/tomcat/apache-tomcat-8.5.34.tar.gz -C /var/tmp/tomcat/ && rm -rf /var/tmp/tomcat/apache-tomcat-8.5.34.tar.gz
## 设置环境变量
ENV JAVA_HOME /var/tmp/jdk/jdk1.8.0_181
ENV CATALINA_HOME /var/tmp/tomcat/apache-tomcat-8.5.34
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin

#开启内部服务端口
EXPOSE 8080


#启动tomcat服务器
CMD ["./var/tmp/tomcat/apache-tomcat-8.5.34/bin/catalina.sh","run"] && tail -f /var/tmp/tomcat/apache-tomcat-8.5.34/logs/catalina.out

  • 构建镜像 需要在Dockerfile目录进行
docker build -t jdk8-tomcat8 .
  • 启动

1.查看镜像信息

root@admin157:/home/moon/jdk_base_dockerfile# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
jdk8-tomcat8        latest              5a24b1c96b5b        6 seconds ago       884 MB
centos              7                   5182e96772bf        6 weeks ago         200 MB
  • 还有一种是通过压缩的方式来打包镜像

以上有7个RUN命令,而下面就使用哟个RUN命令就完成了打包的操作,打出来的镜像大小要小200M Dockerfile 中每一个指令都会建立一层, RUN 也不例外。每一个 RUN 的行为,就和刚才我们手工建立镜像的过程一样:新建立一层,在其上执行这些命令,执行结束后, commit 这一层的修改,构成新的镜像。 而上面的这种写法,创建了 7 层镜像。这是完全没有意义的,而且很多运行时不需要的东西,都被装进了镜像里,比如编译环境、更新的软件包等等。结果就是产生非常臃肿、非常多层的镜像,不仅仅增加了构建部署的时间,也很容易出错。 这是很多初学 Docker 的人常犯的一个错误

From centos:7
MAINTAINER niejian@bluemoon.com.cn
# OS 环境配置
RUN yum install -y wget \
	#下载JDK并安装
	&& mkdir -p /var/tmp/jdk \
	&& wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"  -P  /var/tmp/jdk http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz \
	&& tar zxvf /var/tmp/jdk/jdk-8u181-linux-x64.tar.gz -C /var/tmp/jdk && rm -rf /var/tmp/jdk/jdk-8u181-linux-x64.tar.gz \

	## 安装tomcat
	&& mkdir /var/tmp/tomcat \
	&& wget -P /var/tmp/tomcat http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.34/bin/apache-tomcat-8.5.34.tar.gz \
	&& tar zxvf /var/tmp/tomcat/apache-tomcat-8.5.34.tar.gz -C /var/tmp/tomcat/ && rm -rf /var/tmp/tomcat/apache-tomcat-8.5.34.tar.gz
## 设置环境变量
ENV JAVA_HOME /var/tmp/jdk/jdk1.8.0_181
ENV CATALINA_HOME /var/tmp/tomcat/apache-tomcat-8.5.34
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin

#开启内部服务端口
EXPOSE 8080


#启动tomcat服务器
CMD ["./var/tmp/tomcat/apache-tomcat-8.5.34/bin/catalina.sh","run"] && tail -f /var/tmp/tomcat/apache-tomcat-8.5.34/logs/catalina.out

  • 查看打包好的镜像信息
root@admin157:/home/moon/compose_jdk_tomcat# docker images
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
jdk8-tomcat8-compress   latest              3c03c936c80f        9 minutes ago       689 MB

转载于:https://my.oschina.net/u/3711426/blog/2088275

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值