为了账号安全,请及时绑定邮箱和手机立即绑定

centos下tomcat的webapps目录不对,我的webapps目录在/var/lib/tomcat7/webapps

root@31a8f80b9708:/var/lib/tomcat7/webapps# ls

ROOT

root@31a8f80b9708:/var/lib/tomcat7/webapps# cd /usr/local/tomcat/webapps 

bash: cd: /usr/local/tomcat/webapps: Not a directory


提示不是目录,再查看大小,原来是把jpress.war复制到该目录并命名成了webapps.

tomcat已启动成功,浏览器打开的默认页面是ROOT/index.html .输入localhost:8080/jpress

提示找不到(当然找不到,并没有在正确的webapps下)


find / -name "ROOT" ,找到ROOT/index.html ,在 /var/lib/tomcat7/webapps下

docker rmi -f jpress后,重新编写Dockerfile,COPY jpress.war /var/lib/tomcat7/webapps ,

docker exec -it xxx bash 进去后,果然/var/lib/tomcat7/webapps下,jpress.war已被解包成jpress目录。

现象:由于这里tomcat的默认目录不知为何指向了ROOT,因此直接localhost:8080/jpress ,访问的是ROOT/jpress 。(我通过在ROOT目录下touch a.html,然后localhost:8080/a.html,访问不报404,说明默认目录的确是ROOT)。

问题; 由于vim/vi/nano都提示没有该命令,无法修改server.xml,导致无法访问到jpress!

正在回答

3 回答

/var/lib/tomcat7/webapps下,jpress.war已被解包成jpress目录。是说dockerfile拷贝到容器的那个目录中后,会被自动解压成jpress文件夹吗

我看我的目录中没有,为何

from hub.c.163.com/library/tomcat

# 将war包拷贝到镜像的网站目录下

COPY jpress.war /usr/local/tomcat/webapps/

在容器中查找

root@e0eb49afa8f6:/usr/local/tomcat/webapps# ls

ROOT  docs  examples  host-manager  jpress.war  manager


0 回复 有任何疑惑可以回复我~

所以说 ,我这里就算COPY 到了/usr/local/tomcat/webapps/下面,但是实际生效的目录而是

/var/lib/tomcat7/webapps/


问题:

  1. 1.既然是/var/lib/tomcat7/webapps生效的,那么有没有办法让他启动的时候把/usr/local/tomcat/webapps/jpress.war 解压到/var/lib/tomcat7/webapps下?

  2. 2. exec 到容器中,没有安装编辑器 ,导致不能修改tomcat的配置文件,如何安装编辑器。

  3. 3. 如何在build镜像的时候,指定tomcat的配置文件,这样就不用exec到容器中修改配置文件了。

0 回复 有任何疑惑可以回复我~

COPY jpress.war /var/lib/tomcat7/webapps

后面加一个斜杠/就好了

COPY jpress.war /var/lib/tomcat7/webapps/

1 回复 有任何疑惑可以回复我~
#1

MrQC

写错了,是/usr/local/tomcat/webapps后面
2017-05-06 回复 有任何疑惑可以回复我~
#2

风中过客 提问者 回复 MrQC

[root@localhost dockerdata]# docker build -t jpress:latest . Step 1/3 : FROM hub.c.163.com/public/tomcat:7.0.28 Step 2/3 :.... Step 3/3 : COPY jpress.war /usr/local/tomcat/webapps/ ..... Successfully built f094171fe85b
2017-05-06 回复 有任何疑惑可以回复我~
#3

风中过客 提问者 回复 风中过客 提问者

build过去了,接下来 [root@localhost dockerdata]# docker run -d -p 80:8080 jpress 访问后, 能够看到首页:It works !
2017-05-06 回复 有任何疑惑可以回复我~
#4

风中过客 提问者 回复 风中过客 提问者

exec进去后。 jpress在这里是有的。但是注意,这里没有ROOT (也就是我显示的首页!) root@dcb0d2722c9d:/var/lib/tomcat7/webapps# ls -l /usr/local/tomcat/webapps/ total 20312 -rw-r--r-- 1 root root 20797013 May 1 10:49 jpress.war
2017-05-06 回复 有任何疑惑可以回复我~
#5

风中过客 提问者 回复 风中过客 提问者

root@dcb0d2722c9d:/var/lib/tomcat7/webapps# ls -l total 4 drwxr-xr-x 3 root root 4096 Mar 15 2016 ROOT
2017-05-06 回复 有任何疑惑可以回复我~
查看2条回复

举报

0/150
提交
取消

centos下tomcat的webapps目录不对,我的webapps目录在/var/lib/tomcat7/webapps

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信