docker--centos镜像安装tomcat jdk1.8 mysql部署java web项目
一.下载centos7标准镜像及安装mysql5.7
二.安装jdk
1.查询可用jdk版本
yum search java|grep jdk
2.根据搜索到的jdk进行安装
yum install java-1.8.0-openjdk
3.查看是否安装成功和版本
java -version
三.安装tomcat
从官网下载tomcat的tar包,下载文件为apache-tomcat-8.5.37.tar.gz
1.使用docker cp命令将tar拷贝到容器中
docker cp /apache-tomcat-8.5.37.tar.gz mycontainer:/usr/local/
2.启动容器,并将容器的8080端口映射到宿主机的8888端口
docker run -d -p 8888:8080 --name 容器名(自定义) --privileged -it (已有镜像名):(镜像标签) /usr/sbin/init
3.进入已经启动的容器
docker exec -it mycentos /bin/bash
4.进入到/usr/local目录下,执行解压tar操作
tar -zxvf apache-tomcat-8.5.37.tar.gz
5.将解压完的文件夹重命名
mv apache-tomcat-8.5.37.tar.gz tomcat
6.进行到tomcat/bin目录下 执行
./startup.sh 启动tomcat
打开本机浏览器输入localhost:8888
出现tomcat的欢迎界面则tomcat安装成功
如果没有出现请查看端口映射是否和本地有冲突,或重新安装tomcat
7.再次使用docker cp命令将本地的java web项目的war包拷贝到容器tomacat的webapps目录下
docker cp /java_web.war mycentos:/usr/local/tomcat/webapps/
8.进入容器的tomcat目录下执行
./bin/shutdown.sh
./bin/startup.sh
tomcat会自动解压war
本地打开浏览器,访问
http://localhost:8888/java_web/
如果能展示项目的登录页面或首页则项目部署 到此完成
如果不能,请查看tomcat/logs/catalina.out日志文件 和 localhost.当前日期.log 根据日志解决错误
常见的错误有:
Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web application [/diaowen] due to a StackOverflowError. Possible root causes include a too low setting for -Xss and illegal cyclic inheritance dependencies. The class hierarchy being processed was [org.bouncycastle.asn1.ASN1EncodableVector->org.bouncycastle.asn1.DEREncodableVector->org.bouncycastle.asn1.ASN1EncodableVector]
解决:
修改tomcat内存
vi /usr/local/tomcat/bin/catalina.sh
在"if [ $have_tty -eq 1 ]; then"之后增加
JAVA_OPTS="-server -Xms256m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m"
保存并重启tomcat
如有疑问 请联系博主
docker--centos镜像安装tomcat jdk1.8 mysql部署java web项目的更多相关文章
- CentOS安装tomcat并且部署Java Web项目具有一定的参考价值
本篇文章主要介绍了CentOS安装tomcat并且部署Java Web项目,具有一定的参考价值,有需要的可以了解一下.(http://m.8682222.com) 1.准备工作 b.因为tomcat的 ...
- 阿里云部署Java web项目初体验(转)/linux 上配置jdk和安装tomcat
摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在阿里云上部署Java web项目. 一.准备工作 购买了阿里云的云解析,和云服务器ecs. 2.下载put ...
- Linux CentOS下部署Java Web项目
本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...
- 在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 ...
- 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 ...
- 关于Windows Server 服务器 安装tomcat部署Java Web 项目的问题
我遇到的问题是:不知道怎么配置,感觉在服务器上部署一个web项目,应该是很高大上,步骤应该很繁琐,但是,事实却不是那样.配置反而挺简单. tomcat配置:在tomcat安装目录中的conf文件夹下有 ...
随机推荐
- Subline_Text3消除更新提示
很简单的一个小问题,去除SubLine text的更新问题,在网上看了很多资料也不可以,原来是因为注册码和版本的问题,在这简单做个记录. 关于安装问题就不说啦 百度文库安装方法 安装完成之后一定要注册 ...
- Linux 文件目录管理命令
1.touch 用于设置空白文件或设置文件时间 touch命令参数及作用 参 数 ...
- python-day4装饰器、生成器、迭代器、内置方法、序列化、软件目录
@生成器generator a=(i*2 for i in range(10)) a.__next__()#等同于next(a),基本都不用,多用for循环a.send(m)#将m传为yield的值 ...
- RPM包指令总结
一.RPM RPM包安装位置 RPM包默认安装路径 /etc/ 配置文件安装目录 /usr/bin/ 可执行的命令安装目录 /usr/lib/ 程序所使用的函数库保存位置 /usr/share/doc ...
- junit,面向切面开发(动态代理),工厂设计模式,数据库连接池
1.junit junit又叫单元测试,好处是能进行批量测试,而且如果方法出现了问题能立刻定位出出现问题的方法,还有一个好处是感官效果很好,如果方法都通过了则显示绿条,否则显示红条 TestCase. ...
- Django09-中间件
一.前戏 之前通过给视图函数加装饰器来判断用户是否登录,把没有登录的用户请求跳转到登录页面.我们通过给几个特定视图函数加装饰器实现了这个需求.但是以后添加的视图函数可能也需要加上装饰器,这样稍微有点繁 ...
- Haskell语言学习笔记(93)Data.Text
Data.Text.Read Prelude> :set -XOverloadedStrings Prelude> :m +Data.Text.Read Prelude Data.Text ...
- mysql左连接右连接(查询两张表不同的数据)
有两张表:一张A表he一张B表 left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 :right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录: ...
- React16的interactiveUpdates
交互式更新是用户交互的结果. 它们比默认的非交互式更新(如服务器事件)具有更高的优先级. 异步模式下交互式更新的特殊之处在于,一次交互式更新可能会影响后续行为. 例如,一个表单字段上的"提交 ...
- python学习Day9 内存管理
复习 :文件处理 1. 操作文件的三步骤:-- 打开文件:此时该文件在硬盘的空间被操作系统持有 | 文件对象被应用程序持用 -- 操作文件:读写操作 -- 释放文件:释放操作系统对文件在硬盘间的持有 ...