CentOS7环境下,在docker中安装tomcat容器,学不会你打我.....
上一篇文章 :CentOS7环境下安装docker
开搞!如果你还没有在CentOS7系统中安装好了docker,请看一下上篇文章
启动docker
sudo systemctl start docker
1:查看所有本地上的镜像,查看有没有安装过tomcat镜像,如果没有就拉取一个
docker images
2:拉取一个tomcat镜像
docker pull tomcat:版本号 (只写tomcat 默认为latest版本)
3:需要先随便安装第一个容器(为什么说先随便安装一个,后面介绍)- - name 表示容器的名字,-d 表示后端运行,- p表示主机端口8888映射到容器端口8080
docker run --name tomcat8080 -p 8081:8080 -d tomcat
4:现在访问宿主机ip:8081会报404, 因为在tomcat容器文件中 webapps文件是空的。进入docker中tomcat的容器。
docker exec -it 容器id /bin/bash
5:将webapps.dist文件内容复制到webapps中,或者将webapps删除,将webapps.dist改为webapps -r复制多个文件夹 (我这李用的是复制方法)
6:退出容器
exit
7:在宿主机上创建文件夹,目的是与容器中tomcat配置文件产生映射关系(建立映射关系最主要目的:方便在修改tomcat容器配置或者往webapps中添加项目时,可以直接在宿主机的映射文件中修改添加即可)
8:将容器中的文件分别复制到宿主机上
9:上面两个(7,8)步骤是为了获取tomcat容器的配置文件,然后就可以删除这个容器,然后重新创建一个可用容器(因为用的是同样的镜像,所以创建的第二个容器页是一样的),这次创建容器时,直接创建好映射关系
- - name 表示容器的名字,-d 表示后端运行,- p表示主机端口8888映射到容器端口8080
-v 配置tomcat中对应文件目录映射:冒号前是本地路径,冒号后是容器中tomcat配置路径文件以及地址
这样配置你就可以在主机上,访问虚拟机的IP:8081来进入容器里面的tomcat页面了!
解释:创建第一个容器,只是因为需要将第一个容器中tomcat中的配置文件复制出来而已,否则创建容器时直接关联映射,会导致容器里内容被删除,导致容器不能启动!
我想要好多个容器怎么办???
如果需要多创建几个tomcat容器,只需要分别复制那三个映射文件内容与容器中文件对应。例如:
然后运行
大功告成,现在就可以运行多个tomcat,只是端口不同。可与Nginx配合使用,轮询访问,或者分配权重,效果更佳!

浙公网安备 33010602011771号