直接运行容器

本地找不到镜像会自动下载

--rm

  • Automatically remove the container when it exits
  • 该参数官方推荐,一般用来测试,这个容器用完就会自动删除,用完即删

Docker(39)- docker 实战二之安装 Tomcat_系统运营

下载 ing

 

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

Docker(39)- docker 实战二之安装 Tomcat_Tomcat_02

能看到最后在 8080 端口运行成功

 

停止运行容器,查看镜像和容器列表

Docker(39)- docker 实战二之安装 Tomcat_系统运营_03

刚刚下载的镜像还在,但是容器已经自动删除了

 

下载 tomcat 最新版镜像

docker pull tomcat

 

查看下载的镜像

docker images

 

运行容器

  • -d:后台守护Inc方式运行
  • -p:端口映射,容器内 8080 端口映射到宿主机 8080 端口
  • --name:自定义容器名
docker run -d -p 8080:8080 --name tomcat01 tomcat

  

浏览器访问 8080 端口验证 Tomcat

Docker(39)- docker 实战二之安装 Tomcat_系统运营_04

 

进入容器内部终端模式

docker exec -it tomcat01 /bin/bash

 

查看目录

# 找不到命令
ll

# 正常命令
ls -l

Docker(39)- docker 实战二之安装 Tomcat_系统运营_05

 

进入 webapps 目录

Docker(39)- docker 实战二之安装 Tomcat_Tomcat_06

webapps 目录下啥东西都没

 

直接访问 8080 报 404 存在的两个问题

  • linux 命令变少了
  • webapps 目录为空
  • 所以导致直接访问 8080 端口无法正常打开 Tomcat

 

原因

阿里云镜像的原因,阿里云默认是最小的镜像,所以不必要的都剔除掉,保证最小可运行的环境!

 

进入 webapps.dist 目录

Docker(39)- docker 实战二之安装 Tomcat_Tomcat_07

发现 Tomcat 需要用到的目录和文件都在里面

 

从 webapps.dist 目录下复制所有内容到 webapps 目录下

cp -r webapps.dist/* webapps/

Docker(39)- docker 实战二之安装 Tomcat_Tomcat_08

多个目录复制记得加参数 -r 

 

再次访问 8080 端口验证 Tomcat

Docker(39)- docker 实战二之安装 Tomcat_系统运营_09