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. 命令--cut

    --按文件大小排序 显示前100行 显示后五列 ll -Sh|head -n 100|cut -d ' ' -f 5- 一.基本语法cut是一个选取命令,以行为单位,用指定分隔符将行切分为若干字段,选 ...

  2. Golang学习系列:(一)介绍和安装

    Golang学习系列:(一)介绍和安装 Java程序员带你来到Go的世界,让我们开始探索吧! Go是一种新的语言,一种并发的,带有垃圾回收的.快速编译的语言,它具有一下特点: 他可以在一台计算机上用几 ...

  3. [Selenium]重写拖拽dragWidgetToElementContainner()

    public void dragWidgetToElementContainner(String widgetName, String targetPosition){ WebElement widg ...

  4. iPhone X的UI设计技巧

    以下内容由Mockplus团队翻译整理,仅供学习交流,Mockplus是更快更简单的原型设计工具. 果粉们翘首以待的iPhone X终于开始预售了!同样满怀期待的还有设计师和开发人员,他们将在iPho ...

  5. json解析2

    客户端与服务器进行数据交互时,常常需要将数据在服务器端将数据转化成字符串并在客户端对json数据进行解析生成对象.但是用jsonObject和jsonArray解析相对麻烦.利用Gson和阿里的fas ...

  6. InstaGAN: Instance-Aware Image-to-Image Translation

  7. 层层递进Struts1(五)之处理流程

    这篇博客我们深入Struts框架执行部分源码,从ActionServlet的process函数开始,看一下其内在的执行过程. 流程图 以下流程图展示的是ActionServlet和RequestPro ...

  8. Spring AOP详解(转载)

    此前对于AOP的使用仅限于声明式事务,除此之外在实际开发中也没有遇到过与之相关的问题.最近项目中遇到了以下几点需求,仔细思考之后,觉得采用AOP 来解决.一方面是为了以更加灵活的方式来解决问题,另一方 ...

  9. AngularJs2 构建简单的英雄编辑器

    参考上一篇文章的步骤,重新把相关环境准备.目录结构走一遍. 这一次我们要开始创建真正的Angularjs项目了. 显示我们的英雄 我们要在应用中显示英雄数据 我们来为 AppComponent 添加两 ...

  10. .Net MVC5路由机制与扩展

    新建一个MVC项目启动后,首先访问的地址是http://localhost:xxx/Home/Index,这时候我们也明白因为在程序中有个叫做Home的控制器,并且在这个控制器下面有个叫做Index的 ...