docker 运行tomcat 并部署 java web项目
以下tomcat官方镜像中tomcat:7 和tomcat:8的目录。
CATALINA_BASE: /usr/local/tomcat
CATALINA_HOME: /usr/local/tomcat
CATALINA_TMPDIR: /usr/local/tomcat/temp
JRE_HOME: /usr
CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
先将简单的war包上传到服务器放在任意目录,我的war包是docker.war, 这里是放在docker_tomcat/webapps, cd 进去docker_tomcat, 执行如下命令
docker run -it --rm -p : -v $PWD/webapps:/usr/local/tomcat/webapps tomcat:8.0
参数解析:
-it # 是-i 和 -t的简写, 表示以交互式的方式运行容器,加上-d表示后台运行,这里为了截图输出启动日志我用了-it,也可以用-d,再用"docker logs 容器名"命令输出日志
--rm #当容器被停止时自动删除容器
-p 8888:80 #80是为容器中的tomcat设置的端口, 这里表示将80映射到宿主机8888端口, 如果只写-p 80 容器会随机取值32768~61000中较大的端口号来映射到80端口上
-v # 将tomcat中的usr/local/tomcat/webapps目录映射到宿主机当前目录的webapps目录,后面更新jar包直接扔到被映射的宿主机目录中即可
tomcat:8.0 # 镜像名:tag标签
运行之后会输出taomcat的启动日志如下:
# docker run -it --rm -p : -v $PWD/webapps:/usr/local/tomcat/webapps tomcat:8.0
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /docker-java-home/jre
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
-Oct- ::13.274 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version: Apache Tomcat/8.0.
-Oct- ::13.276 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Jun :: UTC
-Oct- ::13.277 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number: 8.0.53.0
-Oct- ::13.277 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux
-Oct- ::13.278 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 4.10.-.el6.elrepo.x86_64
-Oct- ::13.278 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64
-Oct- ::13.279 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: /usr/lib/jvm/java--openjdk-amd64/jre
-Oct- ::13.279 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 1.7.0_181-b01
-Oct- ::13.280 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Oracle Corporation
-Oct- ::13.280 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: /usr/local/tomcat
-Oct- ::13.280 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: /usr/local/tomcat
-Oct- ::13.281 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
-Oct- ::13.282 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Oct- ::13.285 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=
-Oct- ::13.286 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
-Oct- ::13.286 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
-Oct- ::13.287 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat
-Oct- ::13.287 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat
-Oct- ::13.288 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp
-Oct- ::13.288 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library 1.2. using APR version 1.5..
-Oct- ::13.288 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
-Oct- ::13.297 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized (OpenSSL 1.1.0f May )
-Oct- ::13.464 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-apr-8080"]
-Oct- ::13.495 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-apr-8009"]
-Oct- ::13.501 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in ms
-Oct- ::13.591 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina
-Oct- ::13.595 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.0.
-Oct- ::13.666 INFO [localhost-startStop-] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive /usr/local/tomcat/webapps/docker.war
-Oct- ::14.347 WARNING [localhost-startStop-] org.apache.tomcat.util.descriptor.web.WebXml.setVersion Unknown version string [4.0]. Default version will be used.
-Oct- ::14.742 INFO [localhost-startStop-] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive /usr/local/tomcat/webapps/docker.war has finished in , ms
从34行开始就可以看到已经在部署docker.war了
浏览器访问: http://<ip>:<port>/<application-name> 也就是

因为是用来练习docker中部署war, 所以我的docker.war 很简单, 就是用idea 新建出来的project 什么后台代码都没加, 只是改了index.jsp的内容。

我的web程序结构:

done.
docker 运行tomcat 并部署 java web项目的更多相关文章
- CentOS安装tomcat并且部署Java Web项目具有一定的参考价值
本篇文章主要介绍了CentOS安装tomcat并且部署Java Web项目,具有一定的参考价值,有需要的可以了解一下.(http://m.8682222.com) 1.准备工作 b.因为tomcat的 ...
- Linux(Centos)之安装tomcat并且部署Java Web项目
1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图: b ...
- Linux(Centos)之安装tomcat并且部署Java Web项目(转)
1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图: b ...
- Linux(Centos)安装tomcat并且部署Java Web项目
步骤一.下载安装包 a. 下载tomcat linux安装包,地址:http://tomcat.apache.org/download-80.cgi , 我们下载的版本是8.0,下载方式如图: b ...
- Eclipse用Tomcat插件部署Java Web项目
Eclipse版本3.7.2,Tomcat插件是3.3 详细步骤如下: 1.下载tomcatPlugin插件 tomcatPlugin下载地址http://download.csdn.net/deta ...
- 在linux下用tomcat部署java web项目的过程与注意事项
在linux下用tomcat部署java web项目的过程与注意事项 一.安装JDK 到http://www.oracle.com/technetwork/java/javase/downloads/ ...
- 在linux下用tomcat部署java web项目的过程与注意事项(转)
在linux下用tomcat部署java web项目的过程与注意事项一.安装JDK到http://www.oracle.com/technetwork/java/javase/downloads/in ...
- 阿里云部署Java web项目初体验(转)/linux 上配置jdk和安装tomcat
摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在阿里云上部署Java web项目. 一.准备工作 购买了阿里云的云解析,和云服务器ecs. 2.下载put ...
- 阿里云服务器部署Java Web项目全过程
最近需要将一个Java Web项目部署到服务器上,方便多人共享访问.这也是我第一次接触服务器之类的东西,也花了一点时间,最终总算部署成功,写下一篇文章记录以便日后回顾. 购买服务器 第一步当然是需要购 ...
随机推荐
- pip 参数
pip 自带参数 pip --help pip install 自带参数 pip install --help
- PostgreSQL-14-异常值处理
-- 查看异常值CREATE TABLE outerdata(id int PRIMARY KEY,value numeric); \COPY outerdata FROM 'C:\Users\iHJ ...
- [題解](DP)CF713C_Sonya and Problem Wihtout a Legend
對於不嚴格單調的我們可以n^2DP,首先每個數一定在原數組中出現過,如果沒出現過不如減小到出現過的那個花費更小,效果相同 所以f[i][j]表示把i改到離散化后j的最小代價,每次維護前一狀態最小值mn ...
- CSS 两边是线 中间是文字的效果
刚开始做的时候 想了一下 这个是怎么做出来的,后来在网上看到有个类似的效果,研究一下 <!DOCTYPE html> <html lang="en"> &l ...
- c# JsonReader读取json字符串
使用JsonReader读Json字符串: string jsonText = @"{""input"" : ""val ...
- Codeforces Round #546 (Div. 2) B. Nastya Is Playing Computer Games
链接:https://codeforces.com/contest/1136/problem/B 题意: 有n个井盖,每个井盖上有一个小石头. 给出n和k,k表示刚开始在第k个井盖上方. 有三种操作, ...
- SSIS Passing Parameters to an ADO .NET Source query;向ado.net数据源传递参数。
使用SSIS的oledb数据源时的参数按钮如下图: 但是在使用ADO.NET源连接到MYSQL时,没有这个参数按钮,如何向数据流的sql command传递参数呢? steps: 1. 在 控制流 选 ...
- Less学习(2)(完结)
七.模式匹配与Guard表达式 根据传入参数的不同,引入不同的属性集. .mixin (dark, @color) { color: darken(@color, 10%); } .mixin (li ...
- 如何理解linux多用户多任务
Linux 的单用户.多任务: 容易理解. Linux 的多用户.多任务 举个例子,比如LinuxSir.Org 服务器,上面有FTP 用户.系统管理员.web 用户.常规普通用户等.在同一时刻,比如 ...
- [转]NopCommerce之视图设计
本文转自:http://blog.csdn.net/hygx/article/details/7324452 Designer's Guide Contents Overview 概述 Inst ...