1、目录结构与配置文件如下

[root@centos05 java]# tree
.
├── apache-tomcat-8.0..tar.gz
├── Dockerfile
├── jdk-8u45-linux-x64.tar.gz
└── server.xml directories, files
[root@centos05 java]#
[root@centos05 java]# cat Dockerfile
FROM centos:
MAINTAINER ADD jdk-8u45-linux-x64.tar.gz /usr/local
ENV JAVA_HOME /usr/local/jdk1..0_45 ADD apache-tomcat-8.0..tar.gz /usr/local
COPY server.xml /usr/local/apache-tomcat-8.0./conf RUN rm -f /usr/local/*.tar.gz WORKDIR /usr/local/apache-tomcat-8.0.46
EXPOSE 8080
ENTRYPOINT ["./bin/catalina.sh", "run"]

2、构建过程如下

 [root@centos05 java]# docker build -t tomcat:v1 .
Sending build context to Docker daemon .6MB
Step / : FROM centos:
---> ff426288ea90
Step / : MAINTAINER
---> Running in e91d70bc60d0
---> 6829519fb285
Removing intermediate container e91d70bc60d0
Step / : ADD jdk-8u45-linux-x64.tar.gz /usr/local
---> 6b0100be12a1
Step / : ENV JAVA_HOME /usr/local/jdk1..0_45
---> Running in fad7964053f0
---> e5b7389e4c11
Removing intermediate container fad7964053f0
Step / : ADD apache-tomcat-8.0..tar.gz /usr/local
---> 40c7592e4c02
Step / : COPY server.xml /usr/local/apache-tomcat-8.0./conf
---> 38f789c2fcbd
Step / : RUN rm -f /usr/local/*.tar.gz
---> Running in ab5c4da8402f
---> eba1a38900d7
Removing intermediate container ab5c4da8402f
Step 8/10 : WORKDIR /usr/local/apache-tomcat-8.0.46
---> 80f7c2afe12c
Removing intermediate container 1ed3b6535c9f
Step 9/10 : EXPOSE 8080
---> Running in 2433ca416601
---> c49e930a2afd
Removing intermediate container 2433ca416601
Step 10/10 : ENTRYPOINT ./bin/catalina.sh run
---> Running in 3db5777d6851
---> 327e6bfc7c77
Removing intermediate container 3db5777d6851
Successfully built 327e6bfc7c77
Successfully tagged tomcat:v1

[root@centos05 ~]# docker container run -itd --name tomcat1 -p 77:8080 tomcat:v1

3、访问测试

tomcat镜像构建的更多相关文章

  1. 构建自己的Tomcat镜像

    在很多情况下,我们会不满足于官方提供的Tomcat镜像.比如官方镜像的时区为UTC时间,并不是北京时间:再比如在特定硬件环境下,jdk的随机数生成器初始化过慢问题.此时,我们就会考虑构建自己的Tomc ...

  2. Docker 使用Dockerfile构建tomcat镜像

    Dockerfile概念: 镜像的定制实际上就是定制每一层所添加的配置.文件.如果我们可以把每一层修改.安装.构建.操作的命令都写入一个脚本,用这个脚本来构建.定制镜像,那么之前提及的无法重复的问题. ...

  3. 如何使用Dockerfile构建Tomcat镜像并部署war

    我们都知道Docker构建一个镜像有两种方式: 使用`docker commit`命令 使用`Dockerfile`文件和`docker build`命令 那么这两种方式有何区别呢? 相同点:底层实现 ...

  4. OpenShift应用镜像构建(1) S2I tomcat 镜像定制

    参考并感谢https://www.jianshu.com/p/fd3e62263046 在对接项目制作应用镜像的过程中,经常发现避免不了的是需要写Dockerfile,(当然另外一种方式是直接run一 ...

  5. 用Docker构建Tomcat镜像

    构建tomcat镜像 创建工作目录 [root@elk-node2 tomcat]# mkdir tomcat [root@elk-node2 tomcat]# cd tomcat [root@elk ...

  6. Dockerfile书写介绍及构建ssh镜像、tomcat镜像、nginx镜像

    =================================================================================================== ...

  7. dockerfile构建Tomcat镜像

    dockerfile构建Tomcat镜像 一.镜像分层概念 二.制作tomcat镜像 2.1.创建分层目录 [root@node2 ~]# mkdir /app/{web/{nginx,tomcat, ...

  8. docker构建tomcat镜像

    下载centos镜像 # docker pull daocloud.io/centos:7 [root@localhost ~]# docker pull daocloud.io/centos: : ...

  9. 玩转docker镜像和镜像构建

    摘要 本文从个人的角度,讲述对于docker镜像和镜像构建的一些实践经验.主要内容包括利用docker hub进行在线编译,下载镜像,dind的实践,对于镜像的一些思考等.本文是对当时微信分享内容的一 ...

随机推荐

  1. SummerVocation_Learning--java的线程死锁

    public class Test_DeadLock implements Runnable { ; static Object o1 = new Object(),o2 = new Object() ...

  2. P4747 D’s problem(d)

    时间: 1000ms / 空间: 655360KiB / Java类名: Main 背景 冬令营入学测试题 描述 题目描述 小D是一名魔法师,它最喜欢干的事就是对批判记者了. 这次记者招待会上,记者对 ...

  3. 【NTT】loj#6261. 一个人的高三楼

    去年看过t老师写这题博客:以为是道神仙题 题目大意 求一个数列的$k$次前缀和.$n\le 10^5$. 题目分析 [计数]cf223C. Partial Sums 加强版.注意到最后的式子是$f_i ...

  4. vs对某些网络错误的拦截

    在编写代码的过程中发现如果在写好网页中的文本框内写入js代码(以<script>1</script>输入为例) vs会自动拦截并报错,如图(密码中我也输入了<script ...

  5. 十四、MySQL UPDATE 查询

    MySQL UPDATE 查询 如果我们需要修改或更新 MySQL 中的数据,我们可以使用 SQL UPDATE 命令来操作.. 语法 以下是 UPDATE 命令修改 MySQL 数据表数据的通用 S ...

  6. python2与python3的区别,以及注释、变量、常量与编码发展

    python2与python3的区别 宏观上: python2:源码不统一,混乱,重复代码太多. python3:源码统一标准,能去除重复代码. 编码上: python2:默认编码方式为ASCII码. ...

  7. 简单聊聊四层/七层模型到HTTP

    本文内容借鉴这篇博客:https://blog.csdn.net/agzhchren/article/details/79173491 但是这篇博客也是该博主转载的,文章具体出处我没有找到,如果有人知 ...

  8. proc的妙用

    今天在在公司做网络驱动开发测试时,随机包出现收包计数停止的现象,当时怀疑是DMA rx buffer不足导致,想通过对比收发包正常和收发包不正常是DMA相关寄存器的情况. 后跟踪代码,若在收发包里面增 ...

  9. git初次建立远程仓库问题

    git "Could not read from remote repository.Please make sure you have the correct access rights. ...

  10. 最近使用Nginx的一点新得

    1.基本的负载配置 Nginx最简单的配置模块如下 upstream name{ server ip:port; server ip:port; } server { listen 80; serve ...