前言:
随着云计算和容器技术的快速发展,Docker已经成为了一种广泛使用的容器化技术,可以帮助开发者快速部署和运行应用程序。本文将介绍如何在Docker中安装Tomcat博客,以便在Docker容器中运行Java应用程序。
一.安装Tomact
查找指定的tomact版本
docker search tomcat
下载tomact9.0
接下来就开始下载了
docker pull tomcat:9.0
如果不指定版本的话,则默认下载最新版本,装了镜像下载大家就可以发现超级快
查看该镜像是否安装成功
即查看所有的镜像
docker images
安装成功之后就开始运行镜像了
docker run -d -p 8080:8080 --name lztomcat tomcat:9.0
-d :就是以后台运行方式运行 也可以 -t :以交互式运行 -p :暴露端口号第一个8080是暴露linux 的端口号,这样外部才能连接linux 第二个端口号暴露的是容器的端口号,这样linux才能连接容器 这样外部就能通过服务器访问容器了 --name:给容器取名 tomcat:9.0:运行时加上版本,指定是这个服务器
ps(用于列出正在运行的Docker容器)
镜像运行后,就能发现刚刚运行的已经在运行了
docker ps
测试(虚拟机ip:8080)
使用curl测试端口号,通过ps 可以查出运行状态以及端口号,测试即可。可以发现出现页面404,说明可以访问了,只是路径出现问题
docker exec -it lztomact /bin/bash
docker exec: 这是Docker命令行工具的一个子命令,用于在正在运行的容器中执行命令。 -it: 这是两个选项的组合。-i表示“interactive”,即交互模式,使命令在执行时可以与容器进行交互;-t表示“tty”,即终端模式,为命令提供一个伪终端,使其输出更易于阅读。 tomcatqaq: 这是容器的名称或ID。这意味着您想要在名为“tomcatqaq”或ID为“tomcatqaq”的容器中执行命令。 /bin/bash: 这是您要在容器中执行的命令。在这种情况下,您正在启动bash shell。
解决措施
进入后可以发现两个重要的webapps以及webapps.dist
在自己tomcat可以发现,下面的东西时全部存在webapps文件夹下的,
点开webapps时发现为空
原来这个tomcat是被docker给阉割了,就是将原本属于webapps下面的全部东西放入到webapps.dist文件下面了
接下来就好办了,可以cp赋值过去,也可以rm移动过去,当然还可以直接删除webapps文件,再将webapps.dist重命名为webapps。这里选择复制
cp -r webapps.dist/* webapps
再切换到webapps,就能发现里面有东西了
完成以上步骤,就可以进行最终的测试了
可能需要30s左右,我们就能在浏览器上访问了。一定要用这个外网ip,而不是宿主机ip,真的我进这个坑一上午。就能出现熟悉的·界面了