Apache Tomcat 是一款开源Web服务器,用于托管和运行基于Java的Web应用程序。它是一款轻量级服务器,在生产环境中运行应用时性能表现良好。
Apache Tomcat 概览
商标说明:本软件包由Bitnami打包。所提及的商标分属各自公司所有,使用此类商标不意味着任何关联或背书。
consoledocker run --name tomcat bitnami/tomcat:latest
默认凭据和可用配置选项可在环境变量部分查看。
此镜像为Bitnami构建和维护的强化版最小漏洞(CVE)镜像。Bitnami安全镜像(BSI)基于云优化、安全强化的企业级操作系统Photon Linux构建。选择BSI镜像的理由包括:
每个镜像均附带安全元数据,可在公开目录中查看(部分数据需BSI商业订阅)。
如需基于Debian Linux的旧版镜像,请查看Bitnami Legacy仓库。
通过Helm Chart部署Bitnami应用是在Kubernetes上快速启动的最简单方式。安装详情参见Bitnami Apache Tomcat Chart GitHub仓库。
非root容器增加了额外安全层,通常推荐用于生产环境。但由于容器以非root用户运行,特权任务通常受限。更多信息参见非root容器文档。
了解Bitnami标签策略(滚动标签与固定标签的区别),参见文档页面。
不同标签的对应关系可查看分支文件夹中的tags-info.yaml文件(如bitnami/ASSET/BRANCH/DISTRO/tags-info.yaml)。
可通过关注bitnami/containers GitHub仓库获取项目更新。
获取Bitnami Apache Tomcat Docker镜像的推荐方式是从Docker Hub仓库拉取预构建镜像。
consoledocker pull bitnami/tomcat:latest
如需指定版本,可拉取带版本标签的镜像。可用版本列表可在Docker Hub查看。
consoledocker pull bitnami/tomcat:[TAG]
如需自定义构建,可克隆仓库并执行docker build命令(替换示例中的APP、VERSION和OPERATING-SYSTEM占位符):
consolegit clone [***] bitnami/APP/VERSION/OPERATING-SYSTEM docker build -t bitnami/APP:latest .
删除容器后,所有数据和配置将丢失,下次运行镜像时需重新初始化。为避免数据丢失,应挂载持久化卷(容器删除后仍保留)。
需将目录挂载到/bitnami路径。若挂载的目录为空,首次运行时会自动初始化。
consoledocker run -v /path/to/tomcat-persistence:/bitnami bitnami/tomcat:latest
修改仓库中的docker-compose.yml文件:
yamlservices: tomcat: ... volumes: - /path/to/tomcat-persistence:/bitnami ...
注意:由于此为非root容器,挂载的文件和目录需对UID
1001有正确权限。
/bitnami/tomcat/data目录被配置为Apache Tomcat的webapps部署目录。可在此路径放置解压的Web应用(非压缩格式)或压缩的Web应用资源(.WAR文件),Tomcat会自动部署。
此外,容器中存在符号链接/app指向该部署目录,可通过以下命令在运行中的Tomcat实例上部署应用:
consoledocker cp /path/to/app.war tomcat:/app
如需构建包含WAR文件的自定义镜像,需将WAR文件添加到/opt/bitnami/tomcat/webapps目录。示例Dockerfile:
DockerfileFROM bitnami/tomcat:latest COPY sample.war /opt/bitnami/tomcat/webapps
补充说明:也可通过Apache Tomcat管理界面在运行中的实例上部署应用。
更多详情参见:Apache Tomcat Web应用部署文档
可让Docker将主机随机端口映射到容器的8080端口:
consoledocker run --name tomcat -P bitnami/tomcat:latest
执行docker port命令查看映射的随机端口:
console$ docker port tomcat 8080/tcp -> 0.0.0.0:32768
手动指定主机到容器的端口转发:
consoledocker run -p 8080:8080 bitnami/tomcat:latest
在浏览器中访问 `[***] 即可打开服务器。
可自定义环境变量
| 名称 | 描述 | 默认值 |
|---|---|---|
TOMCAT_SHUTDOWN_PORT_NUMBER | Tomcat关闭端口号 | 8005 |
TOMCAT_HTTP_PORT_NUMBER | Tomcat HTTP端口号 | 8080 |
TOMCAT_AJP_PORT_NUMBER | Tomcat AJP端口号 | 8009 |
TOMCAT_USERNAME | Tomcat管理用户名 | manager |
TOMCAT_PASSWORD | Tomcat管理用户密码 | nil(未设置) |
TOMCAT_ALLOW_REMOTE_MANAGEMENT | 是否允许远程地址访问Tomcat管理应用 | yes |
TOMCAT_ENABLE_AUTH | 是否启用Tomcat管理应用的身份验证 | yes |
TOMCAT_ENABLE_AJP | 是否启用Tomcat AJP连接器 | no |
TOMCAT_START_RETRIES | 等待Catalina启动的重试次数 | 12 |
TOMCAT_EXTRA_JAVA_OPTS | Tomcat的额外Java配置参数 | nil(无) |
TOMCAT_INSTALL_DEFAULT_WEBAPPS | 是否部署默认Web应用(ROOT、manager、host-manager等) | yes |
JAVA_OPTS | Java运行时参数 | -Djava.awt.headless=true -XX:+UseG1GC -Dfile.encoding=UTF-8 -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses=true -Duser.home=${TOMCAT_HOME} |
只读环境变量
| 名称 | 描述 | 值 |
|---|---|---|
TOMCAT_BASE_DIR | Tomcat安装目录 | ${BITNAMI_ROOT_DIR}/tomcat |
TOMCAT_VOLUME_DIR | Tomcat持久化目录 | /bitnami/tomcat |
TOMCAT_BIN_DIR | Tomcat二进制文件目录 | ${TOMCAT_BASE_DIR}/bin |
TOMCAT_LIB_DIR | Tomcat库文件目录 | ${TOMCAT_BASE_DIR}/lib |
TOMCAT_WORK_DIR | Tomcat运行时文件目录 | ${TOMCAT_BASE_DIR}/work |
TOMCAT_WEBAPPS_DIR | Web应用存储目录 | ${TOMCAT_VOLUME_DIR}/webapps |
TOMCAT_CONF_DIR | Tomcat配置目录 | ${TOMCAT_BASE_DIR}/conf |
TOMCAT_DEFAULT_CONF_DIR | Tomcat默认配置目录 | ${TOMCAT_BASE_DIR}/conf.default |
TOMCAT_CONF_FILE | Tomcat配置文件 | ${TOMCAT_CONF_DIR}/server.xml |
TOMCAT_USERS_CONF_FILE | Tomcat用户配置文件 | ${TOMCAT_CONF_DIR}/tomcat-users.xml |
TOMCAT_LOGS_DIR | Tomcat日志目录 | ${TOMCAT_BASE_DIR}/logs |
TOMCAT_TMP_DIR | Tomcat临时文件目录 | ${TOMCAT_BASE_DIR}/temp |
TOMCAT_LOG_FILE | Tomcat日志文件路径 | ${TOMCAT_LOGS_DIR}/catalina.out |
TOMCAT_PID_FILE | Tomcat进程ID文件路径 | ${TOMCAT_TMP_DIR}/catalina.pid |
TOMCAT_HOME | Tomcat主目录 | $TOMCAT_BASE_DIR |
TOMCAT_DAEMON_USER | Tomcat系统用户 | tomcat |
TOMCAT_DAEMON_GROUP | Tomcat系统用户组 | tomcat |
JAVA_HOME | Java安装目录 | ${BITNAMI_ROOT_DIR}/java |
创建自定义用户
默认会创建名为manager的管理用户,未设置密码。首次运行镜像时,通过TOMCAT_PASSWORD环境变量可设置该用户密码。
还可通过TOMCAT_USERNAME指定管理用户名。若未指定,TOMCAT_PASSWORD将应用于默认用户(manager)。
通过Docker Compose指定环境变量
修改仓库中的docker-compose.yml:
CODE_TOKEN_11
通过Docker命令行指定环境变量
CODE_TOKEN_12
容器初始化时,默认Tomcat配置文件会通过环境变量修改基础选项。如需添加更多自定义配置,可挂载自定义配置文件到/opt/bitnami/tomcat/conf/目录以覆盖默认文件(确保文件对容器系统用户可写)。
Docker命令方式
CODE_TOKEN_13
Docker Compose方式
CODE_TOKEN_14
完整配置选项参见Apache Tomcat配置手册。
Bitnami安全镜像目录中的Apache Tomcat Docker镜像支持FIPS配置,可通过以下环境变量设置:
OPENSSL_FIPS:是否启用OpenSSL FIPS模式,默认yes(启用),可选no(禁用)。Bitnami Apache Tomcat Docker镜像将容器日志输出到stdout,可通过以下命令查看:
CODE_TOKEN_15
CODE_TOKEN_16
如需自定义日志消费方式,可通过--log-driver选项配置容器日志驱动(默认使用json-file驱动)。
Bitnami会及时提供Apache Tomcat的更新版本(含安全补丁),建议按以下步骤升级容器:
步骤1:拉取更新的镜像
CODE_TOKEN_17
(使用Docker Compose时,将image属性更新为bitnami/tomcat:latest)
步骤2:停止并备份当前容器
停止容器:
CODE_TOKEN_18
(Docker Compose:docker-compose stop tomcat)
备份持久化卷(/path/to/tomcat-persistence):
CODE_TOKEN_19
步骤3:删除当前容器
CODE_TOKEN_20
(Docker Compose:docker-compose rm -v tomcat)
步骤4:运行新版本镜像
CODE_TOKEN_21
(Docker Compose:docker-compose up tomcat)
rootfs/目录中的Bash脚本。1001运行(此前容器以root运行,Tomcat以tomcat用户运行)。因此,数据目录需对该用户可写。可通过修改Dockerfile中USER 1001为USER root恢复root模式。TOMCAT_USER参数重命名为TOMCAT_USERNAME。/bitnami/tomcat,仅需挂载单个卷即可实现持久化。stdout,不再存储于卷中。docker-compose.yaml请注意,此文件未经过内部测试,建议仅用于开发或测试环境。生产环境部署强烈推荐使用其关联的Bitnami Helm Chart。
如发现docker-compose.yaml问题,可按贡献指南报告或修复。
欢迎通过提交issue或拉取请求参与容器改进(遵循贡献指南)。
如运行容器时遇到问题,可提交issue(建议填写issue模板以获得更好支持)。
Copyright © 2025 Broadcom。"Broadcom"指Broadcom Inc.及其子公司。
根据Apache License 2.0许可协议授权(详见LICENSE)。使用本文件需遵守许可协议,除非***要求或书面同意,软件按"原样"分发,不提供任何明示或暗示担保。
以下是 bitnami/tomcat 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 版本下载页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务