Docker快速安装Tomcat

安装docker的教程,参考文章:

Linux安装Docker-CSDN博客

在linux中安装Tomcat,步骤如下:

1.从远程仓库中拉取Tomcat镜像

docker pull tomcat

如果拉取很慢,通过更换下载镜像的地址便可解决,不过镜像地址可能随时失效,需要多试几个。

解决方法:

vi /etc/docker/daemon.json

进入编辑窗口,将内容替换为:

{

"registry-mirrors": [

"https://registry.docker-cn.com",

"https://docker.1panel.live",

"https://hub.rat.dev",

"http://hub-mirror.c.163.com",

"https://docker.mirrors.ustc.edu.cn",

"https://kfwkfulq.mirror.aliyuncs.com"

]

}

然后保存退出。

刷新配置并重启docker

systemctl daemon-reload

systemctl start docker

再次执行pull命令,就可以了。

以上配置的地址随时可能失效,如果失效了,需要从网上找其他的地址尝试。

2.查看已经拥有的镜像

docker images

3.运行Tomcat

docker run -p 8000:8080 tomcat

启动Tomcat,并将Tomcat默认的8080端口,映射到docker外部的8000端口。

利用docker安装Tomcat很简单,不需要配置jdk、环境变量等内容。

因为我的linux系统是部署在虚拟机上的,所以访问虚拟机的ip(192.168.1.10),加上8000端口,就可以访问到Tomcat了,因为Tomcat没有首页的地址,所以显示404,Tomcat实际已经启动了。

通过修改Tomcat安装路径中ROOT文件夹的位置即可解决首页不显示问题。

使用docker ps查询Tomcat在docker中的名称

根据名称进入安装目录,注意,romantic_pascal是Tomcat的容器名称。

docker exec -it romantic_pascal /bin/bash

执行后会自动进入到安装目录下,ls查看目录内容

进入webapps目录下,发现是空的,正常情况tomcat默认的欢迎页面实际上放在的路径应该是:webapps/ROOT/index.jsp或者index.html。

仔细观察会发现,安装路径下还有个文件夹,webapps.dist。进入后发现,需要的东西都在这里面。

把ROOT目录 移动到 webapps目录中,就可以了,具体操作就是在webapps.dist目录下执行命令:mv ROOT /usr/local/tomcat/webapps/ ,将ROOT文件夹移动位置。

刷新页面,就正常显示Tomcat首页了。

注意,如果是使用的xshell连接的linux,在启动容器后,ctrl+c,会导致容器停止运行。解决方法是在启动命令中添加 -d 参数,将容器后台运行。

docker run -d -p 8000:8080 tomcat

4.查询正在运行的docker容器

docker ps

5.停止某个容器

docker stop 容器编号

容器编号指docker ps命令结果中的第一个字段值(CONTAINER ID) 。

6.查询所有容器状态,包括停止的容器

docker ps -a

7.重启docker中的某个容器

docker restart 容器编号

8.删除某个容器

docker rm 容器编号

9.删除镜像

docker rmi 镜像ID

镜像ID可以通过docker images命令查询。

相关推荐
闲云自留地15 小时前
K8s 的记忆大脑!ETCD 集群部署、etcdctl 命令与备份恢复全通关
容器·kubernetes·etcd
孙克旭_19 小时前
k8s基础组件与创建资源
运维·docker·容器·kubernetes
java_logo1 天前
Docker 部署 EmulatorJS:轻松搭建浏览器复古游戏平台
游戏·docker·容器·复古游戏·轩辕镜像·emulatorjs·红白机
吴声子夜歌1 天前
Kubernetes权威指南——网络原理(一)
网络·容器·kubernetes
方便面不加香菜2 天前
Docker Container --容器及容器的操作案例详解
运维·docker·容器
无人生还别怕2 天前
如何搭建docker仓库(轻量级)registry
linux·运维·docker·云原生·容器·registry·openanolisos
YYYing.2 天前
【K8s系列 (一) 】Docker与容器(上篇)
docker·云原生·容器·kubernetes
csdn_aspnet2 天前
使用 Docker 和 RedisInsight 设置 Redis 以进行本地开发
redis·docker·容器·redisinsight
余槐i3 天前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
csdn_aspnet3 天前
如何在本地 Docker 容器中运行 Redis,并使用 Redis Insight 和 Redis CLI 进行管理
redis·docker·容器