搜索tomcat镜像

docker search tomcat

更改tomcat镜像源(阿里云)
[root@localhost mysql]# sudo mkdir -p /etc/docker
[root@localhost mysql]# sudo tee /etc/docker/daemon.json <<-‘EOF’
> {
> “registry-mirrors”: [“https://tvd9khiq.mirror.aliyuncs.com“]
> }
> EOF
{
“registry-mirrors”: [“https://tvd9khiq.mirror.aliyuncs.com“]
}
[root@localhost mysql]# sudo systemctl daemon-reload
[root@localhost mysql]# sudo systemctl restart docker

拉取tomcat镜像

docker pull tomcat
# 创建容器,设置端口映射、目录映射

mkdir ~/tomcat
cd ~/tomcat

docker run -id —name=c_tomcat -p 8080:8080 -v $PWD:/usr/local/tomcat/webapps tomcat
参数说明:
-p 8080:8080:将容器的8080端口映射到主机的8080端口
-v $PWD:/usr/local/tomcat/webapps:将主机中当前目录挂载到容器的webapps

问题:访问tomcat 404
[root@localhost ~]# docker exec -it 9131afda9d4b /bin/bash
root@9131afda9d4b:/usr/local/tomcat# ls -l
total 128
-rw-r—r—. 1 root root 18982 Dec 3 11:48 BUILDING.txt
-rw-r—r—. 1 root root 5409 Dec 3 11:48 CONTRIBUTING.md
-rw-r—r—. 1 root root 57092 Dec 3 11:48 LICENSE
-rw-r—r—. 1 root root 2333 Dec 3 11:48 NOTICE
-rw-r—r—. 1 root root 3257 Dec 3 11:48 README.md
-rw-r—r—. 1 root root 6898 Dec 3 11:48 RELEASE-NOTES
-rw-r—r—. 1 root root 16507 Dec 3 11:48 RUNNING.txt
drwxr-xr-x. 2 root root 4096 Jan 13 08:25 bin
drwxr-xr-x. 1 root root 22 Feb 14 15:56 conf
drwxr-xr-x. 2 root root 4096 Jan 13 08:25 lib
drwxrwxrwx. 1 root root 177 Feb 14 15:56 logs
drwxr-xr-x. 2 root root 134 Jan 13 08:25 native-jni-lib
drwxrwxrwx. 2 root root 30 Jan 13 08:25 temp
dr-xr-x—-. 6 root root 187 Feb 14 13:47 webapps
drwxr-xr-x. 7 root root 81 Dec 3 11:45 webapps.dist
drwxrwxrwx. 1 root root 22 Feb 14 15:56 work

  1. rm -rf webapps执行这个命令,报错!!!

问题:rm: cannot remove ‘webapps’: Device or resource busy
root@9131afda9d4b:/usr/local/tomcat# umount -rf webapps
umount: /usr/local/tomcat/webapps: must be superuser to unmount.
root@9131afda9d4b:/usr/local/tomcat# mv webapps.dist webapps
root@9131afda9d4b:/usr/local/tomcat# exit

注意:不需要重启tomcat,只需要将原本的webapps所有文件放到/usr/local/tomcat/webapps这下面就可以了!!!

907871d0cce62f50c401c0eb088382c9_20210215004649677.png
webapps.dist里面的文件有ROOT、manager、host-manager、examples、docs文件,将所有文件移出,移到/root/tomcat/ 下面就行了。不能有任何中间文件夹。

原因:tomcat需要直接访问webapps文件夹 ,/usr/local/tomcat 这个就是你设置的-v,/usr/local/tomcat/webapps/
9bb2b1f5d6feddb8ec0370be43785f4e_20210215005236198.png
看上面这个查询文件,第一次查询是按照百度方案操作,仍然遗留问题!! /usr/local/tomcat/webapps/ 下面还是存在webapps.dist文件,这时想要解决,必须用命令把webapps.dist下面的文件移到/root/tomcat/下面就行了!!!
bbffbd981e3c42cc98fdfcb364d30c66_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNTIwNjM2,size_16,color_FFFFFF,t_70.png