这是最推荐的方式,将Tomcat的配置文件挂载到宿主机上:
docker run -d -p 8080:8080 \
-v /path/on/host/server.xml:/usr/local/tomcat/conf/server.xml \
-v /path/on/host/web.xml:/usr/local/tomcat/conf/web.xml \
tomcat:latest
# 进入运行中的容器
docker exec -it <container-id> /bin/bash
# 修改配置文件
vi /usr/local/tomcat/conf/server.xml
# 退出并重启容器
exit
docker restart <container-id>
FROM tomcat:latest
# 复制自定义配置文件
COPY server.xml /usr/local/tomcat/conf/
COPY web.xml /usr/local/tomcat/conf/
# 或者直接修改环境变量
ENV CATALINA_OPTS="-Xms512m -Xmx1024m"
然后构建并运行:
docker build -t my-tomcat .
docker run -d -p 8080:8080 my-tomcat
编辑server.xml
,找到以下内容并修改端口:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
通过环境变量设置:
docker run -d -p 8080:8080 \
-e CATALINA_OPTS="-Xms512m -Xmx1024m" \
tomcat:latest
docker run -d -p 8080:8080 \
-e TZ=Asia/Shanghai \
tomcat:latest
# 挂载webapps目录
docker run -d -p 8080:8080 \
-v /path/to/your/app:/usr/local/tomcat/webapps/yourapp \
tomcat:latest
# 或者直接复制war文件
docker cp yourapp.war <container-id>:/usr/local/tomcat/webapps/
docker logs -f <container-id>
或者查看Tomcat特定日志:
docker exec -it <container-id> tail -f /usr/local/tomcat/logs/catalina.out
/usr/local/tomcat/conf/