Docker(39)- docker 实战二之安装 Tomcat
背景
参考了狂神老师的 Docker 教程,非常棒!
https://www.bilibili.com/video/BV1og4y1q7M4?p=15
直接运行容器
本地找不到镜像会自动下载
--rm
- Automatically remove the container when it exits
- 该参数官方推荐,一般用来测试,这个容器用完就会自动删除,用完即删

下载 ing
下载成功后,容器内部运行日志

能看到最后在 8080 端口运行成功
停止运行容器,查看镜像和容器列表

刚刚下载的镜像还在,但是容器已经自动删除了
下载 tomcat 最新版镜像
docker pull tomcat
查看下载的镜像
docker images
运行容器
- -d:后台守护Inc方式运行
- -p:端口映射,容器内 8080 端口映射到宿主机 8080 端口
- --name:自定义容器名
docker run -d -p 8080:8080 --name tomcat01 tomcat
浏览器访问 8080 端口验证 Tomcat

进入容器内部终端模式
docker exec -it tomcat01 /bin/bash
查看目录
# 找不到命令
ll # 正常命令
ls -l

进入 webapps 目录

webapps 目录下啥东西都没
直接访问 8080 报 404 存在的两个问题
- linux 命令变少了
- webapps 目录为空
- 所以导致直接访问 8080 端口无法正常打开 Tomcat
原因
阿里云镜像的原因,阿里云默认是最小的镜像,所以不必要的都剔除掉,保证最小可运行的环境!
进入 webapps.dist 目录

发现 Tomcat 需要用到的目录和文件都在里面
从 webapps.dist 目录下复制所有内容到 webapps 目录下
cp -r webapps.dist/* webapps/

多个目录复制记得加参数 -r
再次访问 8080 端口验证 Tomcat

Docker(39)- docker 实战二之安装 Tomcat的更多相关文章
- Docker系列之实战:3.安装MariaDB
		环境 [root@centos181001 ~]# cat /etc/centos-release CentOS Linux release 7.6.1810 (Core) [root@centos1 ... 
- java web开发环境配置系列(二)安装tomcat
		在今天,读书有时是件“麻烦”事.它需要你付出时间,付出精力,还要付出一份心境.--仅以<java web开发环境配置系列>来祭奠那逝去的…… 1.下载tomcat压缩包,进入官网http: ... 
- 部署WEB项目到服务器(二)安装tomcat到linux服务器(Ubuntu)详解
		突发奇想,想在自己电脑上部署一个web网站. 1,先去tomcat官网下载一个适合linux的版本:tar.gz 2,然后通过FileZIlla传到服务器的/opt目录: 3,然后创建目录 并解压缩 ... 
- Linux下安装Tomcat服务器和部署Web应用
		一.上传Tomcat服务器 
- CentOS安装tomcat
		一.下载Tomcat 1..进入Tomcat官网:http://tomcat.apache.org/ 左侧选择相应的版本 点击Tomcat 6.0后 点击tar.gz下载apache-tomcat-6 ... 
- 转】Linux下安装Tomcat服务器和部署Web应用
		原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4097608.html 感谢! 一.上传Tomcat服务器 
- 安装Tomcat指定JDK(转)
		一.应用实例 一般情况下一台服务器只跑一个业务,那么就直接配置一套环境,设置好Java环境变量即可.某些时候一台服务器上会安装多个业务,而且各个业务需要的JDK版本各不相同,或者为了使业务独立开来,需 ... 
- linux下安装tomcat和部署web应用
		孤傲苍狼 只为成功找方法,不为失败找借口! Linux下安装Tomcat服务器和部署Web应用 一.上传Tomcat服务器 
- 第一次项目上Linux服务器(三:安装Tomcat及相关命令)
		一.下载Tomcat 去官网:http://tomcat.apache.org/ 找到要下载的Tomcat 本人下载的是apache-tomcat-8.5.29.tar.gz,百度云资源链接:链接:h ... 
随机推荐
- @Aspect 注解使用详解
			AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.AOP是OOP的延续,是软件开发中的一个热点, ... 
- JEP 尝鲜系列 3 - 使用虚线程进行同步网络 IO 的不阻塞原理
			相关 JEP: JEP 353 Reimplement the Legacy Socket API JEP 373 Reimplement the Legacy DatagramSocket API ... 
- [bug] CDH报错:cloudera-scm-server dead but pid file exists
			参考 https://blog.csdn.net/levy_cui/article/details/51243335 
- [Linux]常用命令、组合命令以及输入输出重定向
			[Linux]常用命令.组合命令以及输入输出重定向 2020-03-10阅读 1580 原创文章 文章目录 0.切换目录 1.复制文件和目录`cp` 1.1.复制文件 1.2.复制目录 1.3.扩 ... 
- 【转载】基于Linux命令行KVM虚拟机的安装配置与基本使用
			基于Linux命令行KVM虚拟机的安装配置与基本使用 https://alex0227.github.io/2018/06/06/%E5%9F%BA%E4%BA%8ELinux%E5%91%BD%E4 ... 
- MegaRAID BIOS设置阵列
			MegaRAID BIOS设置阵列 1.在初始界面可以看到physical View的界面,或者在左侧的菜单栏中点击选中即可,可以看到物理磁盘. 2.点击上一步的配置向导可以进入到配置向导界面 3.选 ... 
- 回车与换行的区别:CRLF、CR、LF
			引言 以下是 MySQL 8 导出数据的窗口,导出数据时需要选择记录分隔符,这就需要你明白 CRLF.CR 和 LF 分别代表什么,有何区别,否则可能导出数据会出现莫名其米的问题. 名词解释 CR:C ... 
- Markdown 使用文档
			MarkDown 简介 Markdown 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用.看到这里请不要被「标记」.「语言」所迷惑,Markdown 的语法十分 ... 
- VS Code 安装后的一些配置项
			说明: 个人一直使用Notepad++作为日常文本编辑器,由于之前出现的某个原因,故决定改用VS Code. •设置中文字体 • 输入快捷键 Ctrl+Shift+P • 输入 Configure D ... 
- RSA算法在Python Django中的简单应用
			说明 RSA算法是当今使用最广泛,安全度最高的加密算法. • RSA算法的安全性理论基础 [引]根据百科介绍,对极大整数做因数分解的难度决定了RSA算法的可靠性.换言之,对一极大整数做因数分解愈困难, ... 
