Docker中Tomcat 的安装和使用

安装与使用tomcat

在linux中的docker安装tomcat

$ docker pull tomcat

安装完成后启动tomcat

$ docker run -itd --name mytomcat -p 8080:8080 tomcat

使用docker命令查看tomcat运行状态

$ docker ps

这个时候tomcat有可能处于created状态,这是由于网络原因造成,这个时候重启docker

$ systemctl restart docker

重启docker中的tomcat服务器

$ docker restart mytomcat

查询tomcat在本机上访问的ip地址

$ docker inspect mytomcat |grep -i ipaddr

这时在本机上访问,使用wget命令

$ wget 172.17.0.2:8080

这时有可能会发生404错误,找不到页面,所以在安装目录寻找webapps文件夹是否正常

进入当前程序安装地址的bash命令行
$ docker exec -it 58e3ce743d35 bash
使用ls查看文件列表
root@58e3ce743d35:/usr/local/tomcat# ls
这时会发现有一个webapps目录是空的,有一个webapps.dist的目录是正常的,只需要把空目录删除,非空目录改名就行
有两种办法:
	1 直接使用xftp进入tomcat安装目录文件夹,直接删除和改名,但是因为在docker安装的,所以找出来安装目录相对麻烦
	2 使用命令行,刚刚已经进入了安装目录,使用命令更改
		root@58e3ce743d35:/usr/local/tomcat# mv webapps webapps2
         root@58e3ce743d35:/usr/local/tomcat# mv webapps.dist/ webapps
       即可

重启tomcat服务器

$ docker restart mytomcat

再次在本机上访问

$ wget 172.17.0.2:8080

出现200即为连接成功,可在外部去通过ip地址访问

在网页上输入ip端口号:8080 即可访问
注意:此ip端口号一定是linux服务器的端口号而不是docker的ip

这时可能还会出现404问题,这是由于linux的防火墙问题

解决办法:
 1 直接关闭防火墙
 $ systemctl stop firewalld
 2 开放8080端口
 $ firewall-cmd --permanent --zone=public --add-port=8080/tcp
 $ firewall-cmd --reload
 $ firewall-cmd --zone=public --query-port=8080/tcp

再次在外部访问即可

ip:8080

初次写文,写的不好,还请多多指教

经验分享 程序员 微信小程序 职场和发展