前言
在我用CentOS 7学习Docker网络配置时运行tomcat镜像时访问不到
docker run -it -p 8080:8080 tomcat镜像ID
原因
有可能是tomcat的本身问题,其他不是很清楚,但有解决方法就行了。
解决
首先进入该容器查看
docker exec -it 73c1856a6c23 /bin/bash
ls
由上我们得知有webapps和webapps.dist
分别进入文件查看
cd webapps
ls
cd ../webapps.dist
我们得知本应该在webapps里的文件出现在了webapps.dist中
再次进入tomcat把webapps这个文件删除,后把webapps.dist重新命名为webapps
rm -rf webapps
mv webapps.dist/ webapps
再次刷新浏览器,成功访问
扩展
如果每次创建的tomcat都不能用,当我们学习nginx负载均衡时,需要创建很多个tomcat,我们每一次都要修改如上操作,是很麻烦的。我们可以创建属于自己的tomcat镜像
把当前已经修改的tomcat镜像,变成自己的tomcat镜像
docker commit 73c1856a6c23 mytomcat8
用自己的镜像创建tomcat
docker run -di -p 8081:8080 bab3e4a58a07
是能够成功访问的
原因是因为我们自己创建的tomcat是已经修改好的目录
进入8081:8080镜像中
docker exec -it 3ac841eb70a0 /bin/bash
查看ls -l