docker运行tomcat
1、运行tomcat
实例使用:比如我们运行 tomcat 容器,并且将本地宿主机的 8888 端口映射到容器上的 8080 端口(tomcat的默认端口都是8080)。
此时正常情况下我们通过访问宿主主机的 ip:8888 即可访问到 tomcat 的默认页面:
1.1、解决访问出现404
当 tomcat 的版本过高时,访问可能会报 404。
首先可能是宿主主机的 8888 端口号未开启,需要手动开启系统的 8888 端口,可参考:https://www.cnblogs.com/wenxuehai/p/15145675.html#_label2_2。开启端口后访问还是404,这就可能是因为 tomcat 版本过高的问题,此时我们拉下来的 tomcat 容器的 webapps 目录下并没有项目文件,我就遇到了这种情况。此时解决方法如下:
通过 docker exec -it 容器ID /bin/bash 命令进入 tomcat 容器,可以看到 webapps 和 webapps.dist 文件夹:
你进入 webapps 文件夹会发现该文件夹下没有任何文件,而进入 webapps.dist 文件夹可以发现正常应该在 webapps 下的项目却在 webapps.dist 目录下。
可以直接将 webapps.dist 下的内容全部异动到 webapps 中:
cp -r ./webapps.dist/* ./webapps
或者先通过 rm -rf webapps 命令删除掉 webapps 文件夹,然后通过 mv webapps.dist webapps 命令将 webapps.dist 文件夹重命名为 webapps:
然后就可以通过 Linux系统ip:8888 访问 tomcat 项目了。