1 搜索tomcat镜像

$ sudo docker search tomcat
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
tomcat Apache Tomcat is an open source implementati… [OK]
tomee Apache TomEE is an all-Apache Java EE certif… [OK]
dordoka/tomcat Ubuntu 14.04, Oracle JDK and Tomcat base… [OK]
davidcaste/alpine-tomcat Apache Tomcat / using Oracle Java / with… [OK]
bitnami/tomcat Bitnami Tomcat Docker Image [OK]
cloudesire/tomcat Tomcat server, // [OK]
meirwa/spring-boot-tomcat-mysql-app a sample spring-boot app using tomcat and My… [OK]
tutum/tomcat Base docker image to run a Tomcat applicatio…
aallam/tomcat-mysql Debian, Oracle JDK, Tomcat & MySQL [OK]
...

2 下载tomcat镜像

下载自己需要的版本TAG,详见:

docker安装指定版本TAG的镜像

$ sudo docker pull tomcat:-jre8

3 运行容器

$ sudo docker run -d --name=tomcat -p : -v /etc/localtime:/etc/localtime tomcat:-jre8

命令说明:
-d : 以守护线程运行容器

--name tomcat: 将容器的名字命名为tomcat

-p 8080:8080将容器的8080端口映射到主机的8080端口

-v /etc/localtime:/etc/localtime : 将主机的系统时间映射至tomcat容器,作为tomcat容器的系统时间(不然tomcat容器的系统时间和主机的系统时间,会相差8小时)

tomcat:8-jre8 : 需要安装的镜像名称

4 查看容器启动情况

$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
913ab69daebf tomcat:-jre8 "catalina.sh run" minutes ago Up minutes 0.0.0.0:->/tcp tomcat

通过浏览器访问

5 部署项目

5.1 确定项目部署路径

需要部署的项目,应该部署到docker tomcat容器里的哪个目录呢?

$ sudo docker exec -it tomcat /bin/bash
root@913ab69daebf:/usr/local/tomcat#

可以看到进入tomcat容器后,目录自动定位在/usr/local/tomcat,即表示,/usr/lcoal/tomcat为tomcat的根目录。项目的部署地址,自然是/usr/local/tomcat/webapps/下。

5.2 上传项目war包到Linux主机

本文以一个名为demo.war为例,放到了主机的/home目录下

$ sudo ls /home/
demo.war

5.3 将主机中的war包,复制到tomcat容器中

$ sudo docker cp /home/demo.war tomcat:/usr/local/tomcat/webapps

进入tomcat容器查看nexus.war是否已复制到/usr/local/tomcat/webapps目录

$ sudo docker exec -it tomcat /bin/bash
root@913ab69daebf:/usr/local/tomcat# ls webapps/
ROOT docs examples host-manager manager demo demo.war

由于tomcat是启动状态,所以可以看到在webapps目录下,除了demo.war外,还解压了一个demo目录

5.4 访问demo项目

docker安装Tomcat软件,部署项目的更多相关文章

  1. Docker安装tomcat和部署项目

    随着微服务的流行,Docker越来越流行,正如它的理念"Build, Ship, and Run Any App, Anywhere"一样,Docker提供的容器隔离技术使得开发人 ...

  2. docker安装tomcat并部署web项目

    docker安装tomcat就不说了,网上一大把 启动tomcat: docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tom ...

  3. docker安装Tomcat并部署war项目

    转载:https://blog.csdn.net/javahighness/article/details/82859596 1进入容器 docker exec -it mytomcat bash 以 ...

  4. linux下安装tomcat,部署项目

    一.先检查是否安装jdk java -version 查看版本信息,如果显示 那基本就是安装了. root@iZ2ze2hksqphzp0eh7dskoZ:/opt# java -version -b ...

  5. docker安装tomcat&部署javaweb程序

    一.docker定制简单的java-web应用镜像 网址: 1.jdk下载网址:https://www.oracle.com/technetwork/java/javase/downloads/jdk ...

  6. CentOS安装tomcat并且部署Java Web项目具有一定的参考价值

    本篇文章主要介绍了CentOS安装tomcat并且部署Java Web项目,具有一定的参考价值,有需要的可以了解一下.(http://m.8682222.com) 1.准备工作 b.因为tomcat的 ...

  7. docker安装各类软件

    安装Docker Docker 要求 CentOS 系统的内核版本高于 3.10 , uname -r 命令查看你当前的内核版本 1 安装一些必要的系统工具: sudo yum install -y ...

  8. 基于Docker安装常用软件

    基于Docker安装常用软件 本实验介绍如何基于Docker安装常用的软件,具体包括: Ubuntu Cetnos Nginx Node.js PHP MySQL Tomcat Redis Mongo ...

  9. Java Web开发: Tomcat中部署项目的三种方法

    web开发,在tomcat中部署项目的方法: 可以参考http://m.blog.csdn.net/blog/u012516903/15741727 定义$CATALINA_HOME指的是Tomcat ...

随机推荐

  1. struts,hibernate,spring配置时问题汇总及解决办法

    1.java.lang.NoClassDefFoundError: org/objectweb/asm/ClassVisitor 缺少asm-3.3.jar 2.java.lang.NoClassDe ...

  2. 一起学Angular

    最近想做一款跨平台(pc\app\pad)的东西玩玩,研究了许多技术: android.ios.H5.Bootrap.angular.angular2.ApiCloud.微信小程序 除android. ...

  3. Spring MyBatis Oracle 多数据源

    数据源1 <bean id="dataSource1" class="org.apache.commons.dbcp.BasicDataSource"&g ...

  4. .NET基础 (15)委托

    委托1 请解释委托的基本原理2 委托回调静态方法和实例方法有何区别3 什么是链式委托4 链式委托的执行顺序是怎么样的5 可否定义拥有返回值的方法的委托链6 委托通常可以应用在哪些场合 委托1 请解释委 ...

  5. Linq编译带来的诡异错误

    今天遇到一个很诡异的问题,初步猜测是Linq编译以及编译器自动优化带来的原因,对IL不是很熟悉,所以懒得去追了. 贴个代码出来,希望能抛砖引玉,得到正解. 注意到我用原始的foreach语句代替了li ...

  6. handsontable-cell type

    在单元格中呈现自定义的元素:不能使用html元素 var data = [ { title: "<a href='http://www.amazon.com/Professional- ...

  7. [label][JavaScript扩展] JavaSCript扩展

    http://www.idangero.us/sliders/swiper/ ,swipper for mobile terminal.

  8. Receiving Transaction Processor Conundrum

    what would we do if we are faced with a situation to execute a receiving transaction in oracle ebusi ...

  9. dxbarmanager生成传统下拉式样的菜单

    传统菜单 //创建一个dxSubItem,相当于创建一个主菜单项 dxBarSubItem := TdxBarSubItem.Create(Self); dxBarSubItem.Caption := ...

  10. StringFormate使用

    1常规类型的格式化 1.1显示不同转换符实现不同数据类型到字符串的转换 转换符   说明 示例 %s     字符串类型 “mingrisof” %c     字符类型 'm' %b 布尔类型 tru ...