在拉取镜像之前最好设置加速器
docker加速器的设置请查看我的另外一篇文章链接: docker配置阿里云加速器.
查看镜像
docker search tomcat
选择stars数量最高的。
拉取镜像
docker pull tomcat
创建容器
通过守护进程方式后台运行tomcat
docker run -di --name tomcat -p 8080:8080 tomcat
使用进入tomcat容器
docker exec -it tomcat /bin/bash
或者
docker run -i -t --name tomcat_dev -p 8080:8080 tomcat /bin/bash
这种启动方式将会覆盖掉tomcat镜像Dockerfile文件中CMD默认执行的指令(默认执行脚本会启动tomcat),所以不会默认启动容器中的tomcat应用,需要手动启动。所以对于经常性运行的程序,比如apache,tomcat,Nginx建议使用守护式进程方式启动(-di)。
使用如下指令进入tomcat容器
docker attach tomcat
执行tomcat容器内的启动脚本启动tomcat,如果要访问主界面请往下看
sh /usr/local/tomcat/bin/startup.sh
查看当前的运行的容器
docker ps -a
进入容器
docker exec -it tomcat /bin/bash
或者
docker exec -it 容器id /bin/bash
查看 webapps 目录下是否有 ROOT 项目,我们熟悉的 Tomcat 猫页面一般就在这个项目中。
cd webapps
ls
如上图所示,该目录下空空如也,其实 Tomcat 在比较新的版本中将默认的 ROOT 项目放在了 webapps.dist 中,如果你真想访问 http://*****:8080/ 看到 Tomcat 猫,将其复制至 webapps 即可。
cd /usr/local/tomcat/webapps.dist
ls
cp -rf ROOT/ /usr/local/tomcat/webapps
通过 http://*****:8080/地址就可以访问tomcat的主界面了