Docker入门 安装Tomcat以及报404解决方案
记录简单的在Docker 上安装Tomcat
首先我是在云服务器上(Centos系统)安装的Docker,我们需要在https://hub.docker.com/ 上查找Tomcat镜像
[root@VM_0_17_centos ~]# docker pull tomcat
拉取完官方的Tomcat的镜像后,我们可以在本地镜像列表里查到 REPOSITORY 为 tomcat 的镜像,
[root@VM_0_17_centos ~]# docker images|grep tomcat
tomcat latest ed94f55483b8 2 weeks ago 507MB
接下来,运行容器
[root@VM_0_17_centos ~]# docker run -d --name tomcat -p 8080:8080 tomcat:latest
0be1774e1e5e1388663e65b4a5e59d58597072a960684fff3eca009c3e89d054
说明一下:-p 8080:8080:将容器的 8080 端口映射到主机的 8080 端口。
这时候查看docker 正在运行的容器:
[root@VM_0_17_centos ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0be1774e1e5e tomcat:latest "catalina.sh run" About a minute ago Up About a minute 0.0.0.0:8080->8080/tcp tomcat
这时候已经在运行了,接下来,我们用浏览器访问,
这时候,很奇怪哦,404错误?我这里检查完服务器端口8080已经开放了,接下来,我们进入tomcat的目录:
[root@VM_0_17_centos ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0be1774e1e5e tomcat:latest "catalina.sh run" 7 minutes ago Up 7 minutes 0.0.0.0:8080->8080/tcp tomcat
[root@VM_0_17_centos ~]# docker exec -it 0be1774e1e5e /bin/bash
root@0be1774e1e5e:/usr/local/tomcat# ^C
root@0be1774e1e5e:/usr/local/tomcat# ls -l
total 156
-rw-r--r-- 1 root root 19318 Dec 7 19:23 BUILDING.txt
-rw-r--r-- 1 root root 5408 Dec 7 19:23 CONTRIBUTING.md
-rw-r--r-- 1 root root 57011 Dec 7 19:23 LICENSE
-rw-r--r-- 1 root root 1726 Dec 7 19:23 NOTICE
-rw-r--r-- 1 root root 3255 Dec 7 19:23 README.md
-rw-r--r-- 1 root root 7136 Dec 7 19:23 RELEASE-NOTES
-rw-r--r-- 1 root root 16262 Dec 7 19:23 RUNNING.txt
drwxr-xr-x 2 root root 4096 Jan 4 05:07 bin
drwxr-sr-x 1 root root 4096 Jan 18 08:59 conf
drwxr-sr-x 2 root staff 4096 Jan 4 05:07 include
drwxr-xr-x 2 root root 4096 Jan 4 05:06 lib
drwxrwxrwx 1 root root 4096 Jan 18 08:59 logs
drwxr-sr-x 3 root staff 4096 Jan 4 05:07 native-jni-lib
drwxrwxrwx 2 root root 4096 Jan 4 05:06 temp
drwxr-sr-x 2 root staff 4096 Jan 4 05:06 webapps
drwxr-xr-x 7 root root 4096 Dec 7 19:21 webapps.dist
drwxrwxrwx 2 root root 4096 Dec 7 19:19 work
然后查看到里面发现有webapps和webapps.dist两个文件,而wenapps里面没有东西,webapps.dist才是我们要的东西
root@0be1774e1e5e:/usr/local/tomcat# cd ./webapps
root@0be1774e1e5e:/usr/local/tomcat/webapps# ls -l
total 0
所以这里把webapps删掉,把webapps.dist改名为webapps
root@0be1774e1e5e:/usr/local/tomcat# rm -rf webapps
root@0be1774e1e5e:/usr/local/tomcat# mv webapps.dist webapps
改完之后,我们再重新访问:
这时候已经可以访问了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理