环境:

阿里云ecs服务器

步骤:

1、安装docker

2、获取centos镜像

3、下载tomcat 和 jdk 安装包

4、配置

1、安装docker

https://www.cnblogs.com/shijunjie/p/10436293.html

2、获取centos 镜像

  1、在docker官方镜像源搜索centos镜像,选择合适的版本下载镜像

      https://hub.docker.com/search?q=&type=image&operating_system=

  2、举例:

    docker pull centos:7.6.1810

3、下载tomcat 和 jdk 安装包

tomcat下载地址:

https://tomcat.apache.org/download-80.cgi   tomcat官方下载地址

https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/   清华大学开源软件镜像站下载地址

jdk:

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html    java官方下载地址

4、配置

java配置:

[root@a0a2568d002d centos_data]# mkdir /usr/java 
[root@a0a2568d002d centos_data]# tar -zxvf jdk-8u201-linux-x64.tar.gz -C /usr/java 
[root@a0a2568d002d centos_data]# vi /root/.bashrc 
export JAVA_HOME=/usr/java/jdk1.8.0_201
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
[root@a0a2568d002d centos_data]# source /root/.bashrc
[root@a0a2568d002d centos_data]# java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

## 容器内java环境如果配置到 /etc/profile 那么,重启容器后很大可能不会生效,需要再次执行一遍 source /etc/profile 命令才会生效 。 
## 而java环境如果配置到/root/.bashrc 那么,容器重启后java环境还会生效

tomcat配置:

[root@a0a2568d002d centos_data]# mkdir /usr/local/tomcat
[root@a0a2568d002d centos_data]# tar -xf apache-tomcat-8.5..tar.gz -C /usr/local/tomcat

设置tomcat随容器自动而自启动:

[root@ecaea7d3388c /]# vi /lib/systemd/system/tomcat.service
[Unit]
Description=tomcat
After=network.target [Service]
Type=oneshot
ExecStart=/usr/local/tomcat/apache-tomcat-8.5.39/bin/startup.sh
ExecStop=/usr/local/tomcat/apache-tomcat-8.5.39/bin/shutdown.sh
ExecReload=/bin/kill -s HUP $MAINPID
RemainAfterExit=yes [Install]
WantedBy=multi-user.target
[root@ecaea7d3388c /]# systemctl daemon-reload
[root@ecaea7d3388c /]# systemctl enable tomcat.service
[root@ecaea7d3388c /]# systemctl start tomcat.service
[root@ecaea7d3388c /]# systemctl status tomcat.service


## 问题1:
systemctl start tomcat.service 启动tomcat时可能无法启动,可能会出现以下报错:
    Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
解决办法:
    用 vi 打开 tomcat 的bin目录下的setclasspath.sh,添加JAVA_HOME和JRE_HOME两个环境变量,两个环境变量路径为您安装的java JDK的路径。
举例:

     export JAVA_HOME=/usr/java/jdk1.8.0_201
     export JRE_HOME=${JAVA_HOME}/jre

  

docker 容器 centos + tomcat + jdk的更多相关文章

  1. docker容器下tomcat 不向catalina.out输出日志解决以及支持中文字符集

    docker容器下tomcat 不向catalina.out输出日志解决 去掉 & 符号,直接 使用 ENTRYPOINT ["/data/tomcat/bin/startup.sh ...

  2. 在Docker容器中安装jdk和spark

    在Docker容器中安装jdk和spark 1.下载jdk和spark 可以使用迅雷等专业下载软件下载jdk和spark软件包,注意是linux版,这里直接给出下载地址: JDK下载地址 JDK进入后 ...

  3. docker容器跑tomcat遇到的坑

    使用docker容器跑tomcat,由于同一个宿主机上跑了多个容器,再加上宿主机本身跑了很多进程,导致系统总的进程数达到了8000+,而容器中tomcat的启动脚本中会调用自带的setenv.sh,在 ...

  4. Docker容器部署tomcat出现中文乱码

    docker 容器部署tomcat后,日志文件中出现中文乱码,很多问号,中文的文件夹也是问好.先看看容器的locale: [root@docker1 ~]# docker exec -it 41de9 ...

  5. Docker使用Dockerfile创建Centos(tomcat+jdk)镜像

    原文链接:https://blog.csdn.net/qq_37936542/article/details/80824389 Docker构建镜像的方法主要有两种:    (1)使用docker c ...

  6. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  7. 使用maven插件自动部署web应用至Docker容器的tomcat

    配置maven 在pom.xml加入 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 <plugins>     <plugin>         <gr ...

  8. Docker容器Centos容器安装openssh

    前面在部署容器,使用docker容器作为jenkins的Slave节点时,会发现在使用centos作为镜像源拉去容器,不能正常连接,最后是因为centos的sshd的问题 下面专门是centos容器安 ...

  9. Docker容器Centos不能使用systemctl命令问题

    注:本文出自博主 Chloneda:个人博客 | 博客园 | Github | Gitee | 知乎 本文源链接:https://www.cnblogs.com/chloneda/p/bug-dock ...

随机推荐

  1. C# GDI+绘图介绍

    最近查阅网上资料,将GDI+的基本知识汇总如下: 一.基本的知识 GDI+:Graphics Device Interface Plus也就是图形设备接口,提供了各种丰富的图形图像处理功能; 在C#. ...

  2. mysql - 索引的一些理解

    推荐下这篇文章 http://blog.codinglabs.org/articles/theory-of-mysql-index.html 写的十分的不错.留着以后慢慢看,慢慢的理解.

  3. up7-文件保存位置

    asp.net 默认位置:项目/upload/年/月/日/guid/ 代码截图: 位置截图:   jsp 默认位置:tomcat/webapps/Uploader7Oracle/upload/年/月/ ...

  4. WCF服务编程 读书笔记——第1章 WCF基础(1)

    第1章 WCF基础 本章主要介绍WCF的基本概念.构建模块以及WCF体系架构,以指导读者构建一个简单的WCF服务.从本章的内容中,我们可以了解到WCF的基本术语,包括地址(Address).绑定(Bi ...

  5. windows在python基础上安装pip

    首先你必须已经安装了python,并且配置好环境 键入pip 复制https://bootstrap.pypa.io/get-pip.py的内容并创建get-pip.py文件(该文件的内容就是刚刚复制 ...

  6. hibernate缓存机制(转载)

    缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能.缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事 ...

  7. Arcgis Android 坐标转换

    http://spatialreference.org/首先,在上面的网站查出现有的坐标srid,然后查出目标Srid. 参考api 示例代码 Point point = new Point(120. ...

  8. QQ浏览器兼容模式下Cookie失效 导致的NetCore Cookie认证失效

    最近在写NetCore项目采用的是NetCore的Cookie认证.结果偶然发现QQ浏览器登录不好用.这里先需要了解一下set-cookie中的SameSite属性  导致原因 首先Fiddler 4 ...

  9. C#字典 Dictionary<Tkey,Tvalue> 之线程安全问题 ConcurrentDictionary<Tkey,Tvalue> 多线程字典

    ConcurrentDictionary<Tkey,Tvalue>  Model #region 程序集 mscorlib, Version=4.0.0.0, Culture=neutra ...

  10. SCVMM 安装

    1.所有的物理机必须在域环境下 2.安装VMM和SQL使用的域账号尽量相同,并且唯一,尽量与管理hyper v主机使用的账号不相同