构建Docker镜像实战之构建Tomcat9.0镜像(RPM一键安装Java环境)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构建Docker镜像实战之构建Tomcat9.0镜像(RPM一键安装Java环境)相关的知识,希望对你有一定的参考价值。

构建Docker镜像实战之构建Tomcat9.0镜像(RPM一键安装Java环境)

tomcat是一个免费开源的轻量级web服务器,在中小型企和并发访问量不高的场合普遍使用,是开发和调试JSP程序的首选。下面使用Dockerfile文件的方式来创建带有tomcat服务的Dockerfile镜像。(注:这里的Java环境是使用rpm一键式安装的且小编创建的是tomcat9.0的镜像)

下面直接开始实验

  • 关闭防火墙及SELinux
systemctl stop firewalld.service
setenforce 0

技术分享图片

  • 创建工作目录
[[email protected] ~]# mkdir /root/tomcat
  • 解压tomcat9.0的软件包至工作目录
[[email protected] ~]# cd /root/tomcat/     //切换目录至工作目录
[[email protected] tomcat]# cp /abc/tomcat/apache-tomcat-9.0.8.tar.gz ./    //复制本地的tomcat9.0软件包至工作目录
[[email protected] tomcat]# cp /abc/tomcat/jdk-8u171-linux-x64.rpm ./     //复制本地的jdk的rpm包至工作目录
[[email protected] tomcat]# tar xf apache-tomcat-9.0.8.tar.gz     //解压安装tomcat服务
  • 创建Dockerfile文件

vim Dockerfile

FROM centos       //基于基础镜像
MAINTAINER this is tomcat image <chen>       //作者信息
COPY jdk-8u171-linux-x64.rpm /usr/   //复制jdk的rpm包至容器的/usr/目录下
WORKDIR /usr/     //切换目录至/usr
RUN rpm -ivh jdk-8u171-linux-x64.rpm     //rpm一键安装jdk环境包
ADD apache-tomcat-9.0.8 /usr/local/tomcat8      //解压安装tomcat9.0
EXPOSE 8080       //指定端口8080

技术分享图片

  • 用Dockerfile生成镜像
docker build -t tomcat:centos .      //这里别忽视最后有个小点哦!!!

技术分享图片

  • 运行容器并登入网页验证
[[email protected] tomcat]# docker run --name tomcat01 -p 80:8080 -it tomcat:centos /bin/bash       //映射本地的80端口到容器的8080端口
[[email protected] usr]# cd /usr/local/tomcat8/bin/      
[[email protected] bin]# ./startup.sh 
Using CATALINA_BASE:   /usr/local/tomcat8
Using CATALINA_HOME:   /usr/local/tomcat8
Using CATALINA_TMPDIR: /usr/local/tomcat8/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar
Tomcat started.

技术分享图片

技术分享图片

这样带有tomcat9.0的Docker镜像就生成完毕了,然后只需要将镜像上传到Docker hub的公共仓库就可以供大家下载使用了,或者也可以直接上传到个人的私有仓库,方便以后自己的使用。

以上是关于构建Docker镜像实战之构建Tomcat9.0镜像(RPM一键安装Java环境)的主要内容,如果未能解决你的问题,请参考以下文章

云原生之Docker实战使用Dockerfile构建docker镜像

构建Nginx+Tomcat+MYSQLDocker容器实战

docker实战之Dockerfile(三层镜像的构建)

docker命令总结

Docker 之 Dockerfile

maven构建docker镜像三部曲之二:编码和构建镜像