从docker安装tomcat到启动自定义项目

    使用nginx跳转tomcat的页面,nginx环境搭建已经搭建完成,现在要搭建tomcat环境,我还是使用docker来安装。想搭建nginx环境的小伙伴可以参照我之前的文章。

5分钟教你docker安装nginx到启动教程

 

拉取tomcat镜像

    执行下边的命令

# docker pull tomcat

出现下边的信息说明拉取成功

latest: Pulling from library/tomcat
90fe46dd8199: Pull complete
35a4f1977689: Pull complete
bbc37f14aded: Pull complete
74e27dc593d4: Pull complete
93a01fbfad7f: Pull complete
35b994955649: Pull complete
7f9f18312a34: Pull complete
574205fe650b: Pull complete
229fea8c518f: Pull complete
6306f7102640: Pull complete
Digest: sha256:cae591b6f798359b0ba2bdd9cc248e695ac6e14d20722c5ff82a9a138719896f
Status: Downloaded newer image for tomcat:latest
docker.io/library/tomcat:latest

 

启动tomcat

    使用下边的命令

# docker run --name mytomcat -d -p 8001:8080 tomcat

这里使用--name属性为容器定义一个名字,我们使用docker启动,停止tomcat等操作时就不需要使用容器id了,直接操作我们定义的tomcat名字。

 

查看tomcat在docker中是否启动成功

    使用下边的命令

# docker ps -a

    如果出现下边的信息,尤其是STATUS中,显示UP的话,说明成功运行

    CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS              PORTS                    NAMES
893df33c0409        tomcat              "catalina.sh run"   About a minute ago   Up 59 seconds       0.0.0.0:8001->8080/tcp   mytomcat

    这是你使用客户端访问http://虚拟机ip:8001/,访问时,出现404错误,说明,你的tomcat的webapps路径下没有tomcat的启动页面,那下边我们就自定义页面,来访问。

 

tomcat加载我们项目自定义页面

    大家都知道,我们一般把web应用都放到tomcat安装路径下的webapps文件夹,这里我们使用的是docker安装的tomcat,tomcat安装路径被放到docker容器中,我们只能把配置文件等拷贝出来,修改完,在放回docker容器中,docker也提供了cp命令,下面我们就动手做一下。

    使用下边命令,进入docker容器中的tomcat文件夹

# docker exec -it mytomcat /bin/bash

    进入后,我们就能看到docker容器中的tomcat安装文件夹

root@893df33c0409:/usr/local/tomcat#

    由于docker不支持ll命令,我们只能使用ls命令,查看tomcat安装路径下的文件,这里有我们常用的bin,conf,logs,webapps文件夹等。

root@893df33c0409:/usr/local/tomcat# ls
BUILDING.txt  CONTRIBUTING.md  LICENSE  NOTICE  README.md  RELEASE-NOTES  RUNNING.txt  bin  conf  include  lib  logs  native-jni-lib  temp  webapps  webapps.dist  work

   想让tomcat运行我们自定义项目的话,需要修改conf文件夹下的server.xml文件,由于docker容器内不支持vim命令,我们只能把server.xml拷贝到虚拟机中,修改完后再拷贝回去。使用下边的命令,将server.xml文件拷贝出来,这里需要注意的是,上边查看的是docker容器中的tomcat文件夹,我们需要先退出docker容器,使用exit命令,回到主机后,使用docker cp命令。

# docker cp mytomcat:/usr/local/tomcat/conf/server.xml server.xml

拷贝完成后,使用vi命令,编辑server.xml,在Host标签后添加下边context标签以及内容,保存并推出。

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
<Context path="" docBase="test" debug="0"/>

    修改完server.xml文件后,使用下边的命令将server.xml在拷回到docker容器中

# docker cp server.xml mytomcat:/usr/local/tomcat/conf/server.xml

    上边docbase指定的是test,我们就创建一个test文件夹,在test文件夹内创建一个index.html页面,在把test文件夹,拷贝到docker的tomcat的webapps下

# docker cp test/ mytomcat:/usr/local/tomcat/webapps/

    修改完server.xml和创建完test文件夹,test/index.html文件后并拷贝回docker容器中后,重新启动tomcat

# docker restart mytomcat

    重新使用客户端访问http://虚拟机ip:8001/是,会访问到我们自定的页面。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值