docker ——安装tomcat
环境:centos7
安装tomcat
第一步:联网
第二步:开启docker
systemctl start docker
第三步:拉取镜像
docker pull tomcat //下载tomcat镜像
docker pull tomcat
第四步:创建容器
docker run -d -p 8080:8080 --name tomcat9 tomcat //启动基于tomcat镜像创建tomcat9的容器
docker run -d 宿主机端口:容器端口 --name 容器名 基于的镜像名
docker run -d -p 8080:8080 --name tomcat9 tomcat
docker ps
docker ps
docker exec -it tomcat9 /bin/bash
docker exec -it tomcat9 /bin/bash //进入tomcat9容器
显而易见,这个时候打开火狐浏览器输入localhost:8080并不可以看到界面
文件报错404,显示文件并不存在
docker exec -it tomcat9 /bin/bash
第五步:修改404错误
root@8696593e28a3:/usr/local/tomcat# whereis tomcat //查看tomcat的路径
whereis tomcat
进入路径,查看文件信息,进入webapps,查看文件,里面并没有文件,这就是网页报错404的原因,因为找不到文件
root@8696593e28a3:/usr/local/tomcat# cd /usr/local/tomcat
root@8696593e28a3:/usr/local/tomcat# ls
root@8696593e28a3:/usr/local/tomcat#
root@8696593e28a3:/usr/local/tomcat/webapps# ls
cd /usr/local/tomcat
ls
cd webapps
ls
复制webapps.dist到webapps
cd ..
ls
cp -r webapps.dist/* webapps
回到刚才浏览器刷新可以出现以下界面
创建无需复制webapps.dist到webapps的容器
docker commit mytomcat tomcat:webdocker imagesdocker run -it --name tomcat-web tomcat:web /bin/bash
[root@localhost ~]# docker commit mytomcat tomcat:web //创建基于tomcat9的镜像tomcat:web
[root@localhost ~]# docker images //查看镜像
[root@localhost ~]# docker run -it --name tomcat-web tomcat:web /bin/bash //启动基于镜像tomcat:web创建的镜像tomcat-web
docker ps -a
[root@localhost ~]# docker ps -a
分层下载
docker pull nginx
查看镜像分层的方式可以通过 docker image inspect 命令!
docker image inspect nginx:latest
举一个简单的例子,假如基于Ubuntu Linux 16.04创建一个新的镜像,这就是新镜像的第一层;如果在该镜像中添加Python包,就会在基础镜像层之上创建第二个镜像层;如果继续添加一个安全补丁,就会创建第三个镜像层。
本人理解的意思就是,想要下载A镜像和B镜像,A镜像5M,B镜像3M,A镜像和B镜像有2M文件相似,如果不使用分层下载直接打包下载,那么一共想要耗费8M的流量。但是如果使用分层下载,那么只需耗费6M的流量,那2M的内容可以实现共享。
当然这只是我个人理解,如果有误欢迎指正哦!
UnionFS(联合文件系统):
Union文件系统(UnionFS)是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem)。Union 文件系统是 Docker 镜像的基础。镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
特性:一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层文件系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录
数据卷:
docker run -it -v /home/ceshi:/home --name tomcat-volume tomcat /bin/bash
[root@localhost ~]# docker run -it -v /home/ceshi:/home --name tomcat-volume tomcat /bin/bash
验证数据同步
容器:
宿主机:
两者数据同步,即在容器里进行的操作同步到宿主机,宿主机里进行的操作也会同步到容器,如果你们不信的话,可以试试哦~
创建基于tomcat镜像的tomcat-yun容器,宿主机/home/yun与容器/home对应,宿主机/etc/yun与容器/etc对应
docker run -it -v /home/yun:/home -v /etc/yun:/etc --name tomcat-yun tomcat /bin/bash
[root@localhost ~]# docker run -it -v /home/yun:/home -v /etc/yun:/etc --name tomcat-yun tomcat /bin/bash
docker ——安装tomcat相关推荐
- Docker安装Tomcat、MySQL和Redis
总体步骤 Docker安装Tomcat docker hub上查找tomcat镜像 docker search tomcat 从docker hub上拉取tomcat镜像到本地 docker pull ...
- docker安装Tomcat
docker安装Tomcat docker官网 1.获取镜像 docker pull tomcat 2.构建容器 docker run --name tomcat3 -p 6023:8080 -d - ...
- Docker 安装 Tomcat
Docker 安装 Tomcat runoob@runoob:~/tomcat$ docker search tomcat runoob@runoob:~/tomcat$ docker pull to ...
- 腾讯云轻量应用服务器CentOS系统使用docker安装tomcat,MySQL 并发布SSM maven项目
腾讯云轻量应用服务器CentOS系统使用docker安装tomcat,MySQL 并发布SSM maven项目(记录) 一.服务器修改密码(此时已安装CentOS系统) 二.防火墙添加规则 三.连接X ...
- Docker系列(二十一)——Docker实例三Docker安装Tomcat实例
< Docker实例三Docker安装Tomcat实例 > 前言 在前面一篇文章种,完成了 < Docker安装Nginx实例 >,本篇将继续镜像安装教程,并完成Docker安 ...
- 阿里云轻量应用服务器环境搭建-Docker安装tomcat
阿里云轻量应用服务器环境搭建-Docker安装tomcat 参考链接:https://www.runoob.com/docker/docker-install-tomcat.html 拉取官方的镜像: ...
- Docker安装Tomcat无法访问
问题出现 在服务器上使用docker安装tomcat时遇到了无法访问tomcat的问题.是因为使用docker pull tomact 下载的tomcat镜像中包含有两个webapps 文件夹.一个文 ...
- docker安装tomcat下的日志查看
目录 描述 进行 原因 扩展 解决 参考 描述 在本地运行的项目测试通过.可是部署到linux服务器后,发现测试出现些问题.服务器环境是使用docker安装的tomcat. 进行 一般来说,出现问题, ...
- 用docker安装tomcat并实现目录映射端口映射输入ip地址测试网页连接
1.以CentOS7为例 2.先安装docker 3.再拉取tomcat 4.然后配置tomcat容器 一 .docker安装tomcat8并实现目录映射端口映射 安装docker,以免防止docke ...
- Docker安装Tomcat镜像并部署web项目简述
一.安装Tomcat 1.查找Docker Hub上的tomcat镜像 docker search tomcat 2.拉取官方的镜像 docker pull tomcat 等待下载完毕,需要一些时间. ...
最新文章
- Fast ORB-SLAM
- 解决MVC返回Json中日期格式问题
- R语言编程艺术(1)快速入门
- 关押罪犯洛谷P1525
- Java并发编程之线程池及示例
- spark中使用categoricalFeaturesInfo来标记分类型变量
- error: field 'b' has imcomplete type
- 如何使用c#编写单片机程序
- 如何对web.config进行加密和解密
- python忠告_学习Python一段时间,老司机给上路新手的3点忠告!
- .net小插件:indent guides
- 【学习笔记】常见的激励函数和损失函数
- VMware 安装心得
- matlab wmaxlev函数,CT-PET小波图像融合在精确放射治疗应用研究
- python抓取腾讯视频弹幕_Python实战 | 如何抓取腾讯视频弹幕
- Pgpool-II + Watchdog 设置与测试
- aden -接球游戏 2.0
- 将动网论坛验证码修改为算术运算提问的验证码
- 动态生成模板(模板生成器)
- Java-方法的详解( 看完之后,我不允许还有人不懂!)
热门文章
- 基于Java+SpringBoot+vue实现图书借阅和销售商城一体化系统
- drawable-(hdpi,mdpi,ldpi)和WVGA,HVGA,QVGA的区别以及联系
- 想知道数字1-13的深层含义吗?
- 移动浏览器内核及连接数
- 亏麻了,华为离职后年终奖照旧发。。
- 什么浏览器好用稳定速度快?
- Android 多渠道配置
- 慧荣SMI SM3255主控三星Flash芯片专用量产工具SM3255_J0324
- Pytorch 如何计算三角函数
- 戴尔聚合网络适配器(Converged Network Adapter, CNA) 在RHEL 6 SP1环境下可开箱即用