
Tomcat Docker 官方镜像新手指南5 分钟跑通你的第一个 Tomcat 容器【免费下载链接】tomcatDocker Official Image packaging for Apache Tomcat项目地址: https://gitcode.com/gh_mirrors/to/tomcatApache Tomcat 是最流行的 Java Web 服务器之一而Tomcat Docker 官方镜像就是 Docker 上运行 Tomcat 的标准方式由 Docker 社区团队维护。本项目gh_mirrors/to/tomcat正是这份官方镜像的打包源码仓库覆盖 Tomcat9.0、10.1、11.0三大版本系列并搭配 Java 8 到 Java 25 的多种 Java 版本。这篇新手指南将带你用 5 分钟、一行docker run命令跑通你的第一个 Tomcat 容器并部署第一个 Web 应用全程无需安装任何 Java 环境。一、为什么选择 Tomcat Docker 官方镜像对新手来说直接用官方镜像有四大好处开箱即用镜像内置 Java 运行时、Tomcat 以及编译好的 Tomcat Native 加速库不用手动配置任何环境版本自由3 个大版本 × 多个 Java 版本任意组合清单见 versions.json安全可信构建时会对 Tomcat 安装包做 SHA512 校验 GPG 签名验证确保来源可靠标准化运维默认以非 root 用户运行、已移除自带的示例应用镜像干净利落二、镜像版本怎么选Tomcat 9、10 还是 11版本信息定义在 versions.json 中目前仓库维护的版本如下Tomcat 系列当前版本支持的 Java 版本适合谁9.09.0.1218 / 11 / 17 / 21 / 25使用javax.servlet的存量项目10.110.1.5911 / 17 / 21 / 25新项目的主流之选jakarta.servlet11.011.0.2517 / 21 / 25面向未来的长期支持系列每个系列下还有两类子变体理解镜像标签tag命名就简单了jdkvsjrejdk带完整 JDK可在线编译 JSPjre只含运行时镜像更小适合部署预先编译好的应用temurin-jammyvstemurin-noble基于 Ubuntu 22.04 或 24.04 的 Eclipse TemurinAdoptiumJava组合示例tomcat:10.1-jdk21表示 Tomcat 10.1 系列 Java 21 JDK。三、5 分钟快速启动运行你的第一个 Tomcat 容器 ⏱️只需提前装好 Docker然后三步走# 1. 拉取镜像约 500MB视网速等待几分钟 docker pull tomcat:10.1-jdk21 # 2. 启动容器把容器的 8080 端口映射到本机 8080 docker run --name tomcat-test -p 8080:8080 -d tomcat:10.1-jdk21 # 3. 查看日志确认 Tomcat 启动成功 docker logs tomcat-test看到Server startup in [xxx] milliseconds字样说明你的第一个 Tomcat 容器已经跑起来了 小提示镜像默认把工作目录设为/usr/local/tomcat即CATALINA_HOME并默认执行catalina.sh run启动这些约定在 Dockerfile.template 中定义。四、部署第一个 Web 应用挂载 webapps 目录官方镜像出于安全考虑把自带示例应用移到了webapps.dist目录容器内webapps默认为空。所以访问http://localhost:8080会 404——别慌这正是让你部署自己的应用# 准备本地目录放入你的 WAR 包或展开后的 Web 目录 mkdir -p ./myapp cp myapp.war ./myapp/ # 挂载到容器的 webappsTomcat 会自动部署 docker run --name tomcat-app \ -p 8080:8080 \ -v $(pwd)/myapp:/usr/local/tomcat/webapps/myapp \ -d tomcat:10.1-jdk21随后访问http://localhost:8080/myapp看到你的应用页面恭喜通关五、镜像是怎么构建的进阶选读如果你想了解这份官方镜像的打包原理可以克隆仓库自行研读git clone https://gitcode.com/gh_mirrors/to/tomcat核心文件一览versions.json记录每个 Tomcat 系列的版本号、SHA512 校验值和全部变体清单Dockerfile.templateDockerfile 模板。依次完成下载 Tomcat → GPG 签名验证 → 编译 Tomcat Native → 清空默认应用 → 修正非 root 运行权限 → 暴露 8080 端口 → 设置默认启动命令apply-templates.sh按「版本 × 变体」组合从模板批量生成各目录下的独立 Dockerfileupdate.sh一键刷新版本信息并重新生成所有 Dockerfilefrom.jq/shared.jq模板辅助函数负责推导 Java 基础镜像和校验 Java 版本兼容性10.1/jdk21/temurin-noble/Dockerfile一份生成产物的实例可直接查看最终构建过程六、常见问题速查表 问题解决办法提示端口 8080 已被占用换宿主机端口-p 8081:8080访问http://localhost:8081启动后访问 404webapps默认为空按上一节挂载你的应用容器内存不够通过环境变量限制堆内存docker run -e JAVA_OPTS-Xms128m -Xmx256m ...挂载目录后应用不可写镜像默认非 rootuid 1000运行宿主机挂载目录需保证可写权限应用是纯 JSP 需在线编译选jdk变体如tomcat:10.1-jdk21jre变体不含编译器七、写在最后现在你已经掌握了 Tomcat Docker 官方镜像的核心用法一行命令拉起容器、挂载 webapps 部署应用、按项目需求挑选版本与 Java 变体。日常开发调试用jdk变体最省心生产环境追求精简可以换jre变体。建议新项目优先使用 Tomcat 10.1jakarta.servlet已成为新标准。祝你的容器之路顺利【免费下载链接】tomcatDocker Official Image packaging for Apache Tomcat项目地址: https://gitcode.com/gh_mirrors/to/tomcat创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考