有篇已经说得很详细了,转载于:Docker下载Tomcat镜像并运行Tomcat容器
1、上dockerhub官网
2、在dockerhub上搜索tomcat镜像
3、点击进入页面然后点击Tags页,查看关于tomcat镜像的各种版本信息
除了到dockerhub的官网上搜索tomcat镜像外还可以在linux上使用命令来搜索tomcat镜像(不过我建议用上面的方式搜索镜像,因为关于镜像的信息会更加详细和明朗)
docker search tomcat
效果图:
4、下载tomcat镜像(因为没指定tomcat的版本,所以下载的是最新的tomcat镜像)
docker pull tomcat
效果图:
若想下载指定版本的,可以在镜像后加:版本号
例:
下载tomcat版本为8.5的镜像
docker pull tomcat:8.5
5、启动容器时给容器映射主机端口,方便外网对tomcat容器进行访问
-
#选项及解释
-
-d后台启动
-
-p
2222:
8080把主机的
2222端口映射到docker的
8080端口上(
8080端口是tomcat的默认端口,当访问主机的
2222端口时,会自动把
2222映射到
8080端口,从而访问tomcat)
-
-
docker
run -d -p 主机端口:容器端口 tomcat
例:
docker run -d -p 2222:8080 tomcat
若想开启多个tomcat容器,为区分多个tomcat容器也可以给多个tomcat容器命名
例:
-
#选项及解释
-
-d后台启动
-
-p
2222:
8080把主机的
2222端口映射到docker的
8080端口上(
8080端口是tomcat的默认端口,当访问主机的
2222端口时,会自动把
2222映射到
8080端口,从而访问tomcat)
-
--name给容器命名
-
-
docker
run -d --name tomcat
01 -p
2222:
8080 tomcat
6、在主机上访问映射了tomcat容器的端口,看容器是否正常运行
curl localhost:2222
效果图:
证明tomcat容器运行成功,但显示404没找到网页
7、进入tomcat容器
输入以下命令进入tomcat容器
docker exec -it 容器id /bin/bash
操作过程截图:
8、进入webapps目录,查看当前目录下的文件
操作过程截图:
发现该目录下没有任何东西,所以上述的步骤6访问端口为2222的地址时,显示的是404找不到页面(tomcat启动时会去加载webapps目录下的应用程序,若webapps目录里没任何文件,自然加载不出页面,导致404)
9、把文件从webapps.dist目录里的全部文件拷贝到webapps目录里
cp -r webapps.dist/* webapps
例:
效果图:
10、退出容器,再次用curl命令访问主机的2222端口
curl localhost:2222
效果图:
11、外网访问主机2222端口(主机ip:端口号,若访问不了请检查安全组和防火墙是否开放了相应的端口,没开放安全组和防火墙的端口外网是访问不了主机指定端口的)
效果图:
其他:端口映射示意图
创作不易,如果这篇文章对你有帮助,希望能点个赞帮助文章的推广,如果文章有错漏,希望各位能批评指正,谢谢大家。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/157115.html