Administrator
发布于 2022-01-05 / 10 阅读
0
0

docker 常用软件安装(tomcat、mysql等)

前言

docker pull image[:tag]前,如果不清楚镜像服务器(docker registry)支持的镜像版本(tag),那么可以到 docker hub 上查看镜像的版本(tag)。以 mysql 为例,如下图:

image.png

tomcat

提醒:注意不要用最新的tomcat,最新的仅支持jdk 11 and later。tomcat版本的选择请参考apache官网>tomcat>Which version?中列举信息,如下图:

image.png

踩坑:使用最新的tomcat版本(10.0.14),放jdk8编译和jdk11编译的war包到webapps中,结果都是单纯解压war包,springboot启动的信息一点都没有打印,项目也没有跑起来。换成 tomcat9 的镜像就跑起来了。

原因是:tomcat9 升级到 tomcat10,很多 api 的包名都从 javax.* 变成了 jakarta.*,而 DispatcherServlet 继承的是javax.servlet.http.HttpServlet,故项目在 tomcat9 正常运行而 tomcat10 报错404。apache官方也给出了工具方便我们二次编译war包,如下图。

image.png

1. docker search tomcat
2. docker pull tomcat:9
3. docker run --name tomcat -p 8080:8080 -v /volume/tomcat/data/:/usr/local/tomcat/webapps  -v /volume/tomcat/upload/:/usr/local/tomcat/upload  -v /etc/localtime:/etc/localtime:ro -e TZ="Asia/Shanghai" -d tomcat:9

mysql

docker pull mysql:5.7



评论