简述Docker安装Tomcat镜像并部署web项目

 更新时间:2020年10月22日 14:39:50   作者:SuperButton  
这篇文章主要介绍了简述Docker安装Tomcat镜像并部署web项目,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、安装Tomcat

1、查找Docker Hub上的tomcat镜像

docker search tomcat

这里写图片描述

2、拉取官方的镜像

docker pull tomcat

这里写图片描述

等待下载完毕,需要一些时间。

这里写图片描述

3、查看docker所有的镜像

docker images

这里写图片描述

4、启动tomcat镜像

注:前者是外围访问端口:后者是容器内部端口

docker run -d -p 8080:8080 tomcat

这里写图片描述

注:前者是外围访问端口:后者是容器内部端口
如下命令可后台启动tomcat
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

docker run –d -p 8080:8080 tomcat

这里写图片描述

如下则启动成功:

这里写图片描述

5、查看正在运行的容器

docker ps

这里写图片描述

输入ip和端口即可查看tomcat主页:

这里写图片描述

二、向Tomcat部署自己的web项目

1、上传war包

这里写图片描述

2、创建并编辑”Dockerfile”,内容如下:

from tomcat
MAINTAINER *********@163.com 
RUN rm -rf /usr/local/tomcat/webapps/*
COPY button.war  /usr/local/tomcat/webapps
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

说明:

from tomcat  #你的 tomcat的镜像
MAINTAINER *********@163.com  #作者
COPY button.war  /usr/local/tomcat/webapps #放置到tomcat的webapps目录下

3、生成新的镜像

docker build -t button:v1 .

这里写图片描述

4、启动新的镜像

docker run -d -p 8080:8080 button:v1

这里写图片描述

5、查看已启动镜像

可以加上参数-itd后台启动tomcat,用以下方式查看已启动的镜像

docker ps

这里写图片描述

6、查看tomcat中的项目
可以使用如下命令进入tomcat镜像:

docker exec -it  *******  /bin/bash  #******是容器id(CONTAINER_ID)

这里写图片描述

当我们进入镜像后,想对某些参数进行修改时,一般需要安装文本编辑器,以vim为例:
由于下载地址是海外地址,下载速度非常慢而且可能出现中断,所以做如下配置:

mv /etc/apt/sources.list /etc/apt/sources.list.bak
  echo "deb http://mirrors.163.com/debian/ jessie main non-free contrib" >/etc/apt/sources.list
  echo "deb http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list
  echo "deb-src http://mirrors.163.com/debian/ jessie main non-free contrib" >>/etc/apt/sources.list
  echo "deb-src http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list

然后更新
apt update
现在就可以安装我们需要的软件了,例如vim
apt install vim

7、输入ip和端口进行查看

这里写图片描述

8、可以查看指定容器的log

docker logs -f 容器id

这里写图片描述

9、部署web项目后也许会出现docker容器与宿主、docker 容器与tomcat 应用打印日志时间和我们当前时间相差8个小时,可以添加如下配置:

①启动容器时,将系统时间挂载到容器内,可以解决docker容器与宿主时间不一致问题,如下所示:
添加参数

-v /etc/localtime:/etc/localtime:ro

完整命令如下示例:

sudo docker run -d --name button-api -p 8080:8080 -v /etc/localtime:/etc/localtime:ro button-api:v1

②docker 容器与tomcat 应用打印日志时间不一致
启动tomcat容器后进入tomcat的"bin"目录,修改catalina.sh文件
在注释结束的第一行添加如下内容:

JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF8 -Duser.timezone=GMT+08"

如下图所示:

这里写图片描述

修改保存后重启docker容器就可以了。
重启方法:
"docker ps"查询容器id,使用如下命令重启:

docker restart 容器id

到此即可解决该问题。

到此这篇关于简述Docker安装Tomcat镜像并部署web项目的文章就介绍到这了,更多相关Docker安装Tomcat镜像并部署内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 用docker一键部署前后端分离项目的详细流程

    用docker一键部署前后端分离项目的详细流程

    这篇文章主要介绍了如何用docker一键部署前后端分离项目的详细流程,通过图文结合的方式给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-03-03
  • Docker 部署 Alertmanager的详细步骤及常见问题

    Docker 部署 Alertmanager的详细步骤及常见问题

    这篇文章主要介绍了Docker 部署 Alertmanager的详细步骤及常见问题,本文给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2025-05-05
  • 使用Docker命令查看容器最后300行实时日志

    使用Docker命令查看容器最后300行实时日志

    在日常的容器化应用管理中,日志是排查问题、监控运行状态的重要工具,Docker 提供了简便的命令来查看容器日志,帮助开发者和运维人员快速定位问题,本篇博客将详细介绍如何使用 Docker 命令查看指定容器的最后 300 行实时日志,需要的朋友可以参考下
    2025-03-03
  • 使用Docker安装SonarQube的详细教程

    使用Docker安装SonarQube的详细教程

    这篇文章主要介绍了Docker安装SonarQube的教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-10-10
  • docker限制容器内存的方法详解

    docker限制容器内存的方法详解

    在服务器中使用 docker 时,如果不对 docker 的可调用内存进行限制,当 docker 内的程序出现不可预测的问题时,就很有可能因为内存爆炸导致服务器主机的瘫痪,本文将介绍使用 docker 进行容器内存限制的方法,感兴趣的朋友一起看看吧
    2023-11-11
  • docker中查看日志的几种常见方式

    docker中查看日志的几种常见方式

    这篇文章主要给大家介绍了关于docker中查看日志的几种常见方式,Docker提供一些方式来查看容器的日志,文中将每种方法都给出了代码示例,需要的朋友可以参考下
    2023-08-08
  • Docker部署Consul配置过程解析

    Docker部署Consul配置过程解析

    这篇文章主要介绍了Docker部署Consul配置过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Centos7安装docker、docker-compose实践过程

    Centos7安装docker、docker-compose实践过程

    这篇文章主要介绍了Centos7安装docker、docker-compose实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-07-07
  • Docker如何删除镜像

    Docker如何删除镜像

    本文详细介绍了如何使用Docker删除镜像,包括查看镜像、删除单个镜像、删除多个镜像、删除所有镜像以及注意事项,删除镜像是一个常见的操作,用于清理不再需要的镜像,以节省存储空间
    2025-03-03
  • Windows的docker删除容器后WSL2磁盘空间不释放的问题的解决方法

    Windows的docker删除容器后WSL2磁盘空间不释放的问题的解决方法

    很多同学拉取镜像使用一段时间后发现 C 盘快满了,把之前用过的镜像和容器删除,发现 WSL 挂载目录的虚拟磁盘大小没有变化,非常的奇怪,所以本文介绍了Windows的docker删除容器后WSL2磁盘空间不释放的问题的解决方法,需要的朋友可以参考下
    2024-12-12

最新评论