docker制作tomcat基础镜像,最方便快捷,升级的3种方法

这篇具有很好参考价值的文章主要介绍了docker制作tomcat基础镜像,最方便快捷,升级的3种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.使用原有旧版tomcat镜像,制作新版官方tomcat镜像

2.容器内修改文件打包成新tomcat镜像

3.使用官方安装包制作镜像


1.使用原有旧版tomcat镜像,制作新版官方tomcat镜像

示例需求:

在tomcat修改文件conf/server.xml中的Connector模块下添加参数 maxHttpHeadersize="2000"

并升级tomcat版本至8.5.82,制作一个新镜像

镜像容器内的文件传到本机操作指引:

1、docker images|grep tomcat   #查看tomcat基础镜像id

注:使用docker run -it 镜像id /bin/bash  #进入容器命令,查看文件路径

2、本机命令行敲:docker cp 镜像id:/容器内文件路径 /本机路径 

正文

编写Dockerfile:

FROM kylin-tomcat:8.5.81  #基于kylin-tomcat:8.5.81做修改,此处为旧版包版本号
WORKDIR /home/admin		#WORKDIR 指令为 Dockerfile 中指令设置工作目录。
ENV PWD /home/admin		#添加固定路径
ADD rm -rf /home/admin/     #删除镜像内,旧版本包内容
ADD apache-tomcat-8.5.82.tar.gz /home/admin		#解压新版本包到/home/admin路径下
COPY server.xml /home/admin/apache-tomcat-8.5.82/conf/	
#复制本机当前路径修改好的server.xml到/home/admin/apache-tomcat-8.5.82#此处需修改为新包名/conf/下
ENV TOMCAT_VERSION 8.5.82	#添加环境变量版本信息
EXPOSE 8080		#端口
CMD ["/home/admin/apache-tomcat-8.5.82/bin/catalina.sh","run"]  #默认运行检查脚本

#在当前路径制作镜像

docker build -t kylin-tomcat-20480:8.5.82 .  #名字自取,当前路径有个点 

2.容器内修改文件打包成新tomcat镜像

#查看原有tomcat镜像id
docker images |grep kylin-tomcat  

#运行tomcat容器
docker run --name docker-tomcat -d -p 8080:8080 镜像id   #需后台运行加-d参数,否则打包的镜像无法使用
#进入容器
docker exec -it 镜像id bash

进入容器命令行修改server.xml文件:
vi /home/admin/apache-tomcat-8.5.81/conf/server.xml

在Connector模块下添加参数 maxHttpHeadersize="20480"

保存文件
复制命令行开头的容器id
退出exit

docker commit 容器id kylin-tomcat-20480:8.5.82

修改所有应用的Dockerfile重新打包发布

#打包命令
Docker save -o #保存根路径加包名#/root/kylin-tomcat-20480:8.5.82.tar  #镜像名字#kylin-tomcat-20480:8.5.82

3.使用官方安装包制作镜像

制作Tomcat镜像的步骤如下:

官方网站:Apache Tomcat® - Welcome!下载Tomcat安装包并解压。

docker tomcat镜像,docker,tomcat,镜像,tomcat,java,前端,docker

docker tomcat镜像,docker,tomcat,镜像,tomcat,java,前端,docker

在Tomcat安装目录下创建Dockerfile文件。

在Dockerfile文件中编写以下内容:

FROM openjdk:8-jdk-alpine
ENV CATALINA_HOME /usr/local/tomcat
ENV PATH $CATALINA_HOME/bin:$PATH
WORKDIR $CATALINA_HOME
COPY apache-tomcat-10.1.5.tar.gz $CATALINA_HOME
RUN tar -xvf apache-tomcat-10.1.5.tar.gz
EXPOSE 8080
CMD ["catalina.sh", "run"]

其中,FROM指定了基础镜像为openjdk:8-jdk-alpine,ENV设置了环境变量,WORKDIR指定了工作目录,COPY将Tomcat安装包复制到容器中,RUN解压Tomcat安装包,EXPOSE指定了容器对外暴露的端口,CMD指定了容器启动时运行的命令。

在Dockerfile所在目录下执行以下命令,构建镜像:

docker build -t tomcat-10.1.5 .

其中,tomcat-10.1.5为镜像名称。

构建完成后,可以使用以下命令运行容器:

docker run -d -p 8080:8080 tomcat-10.1.5

其中,-d参数表示容器在后台运行,-p参数将容器内部的8080端口映射到主机的8080端口,tomcat为镜像名称。文章来源地址https://www.toymoban.com/news/detail-694577.html

到了这里,关于docker制作tomcat基础镜像,最方便快捷,升级的3种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker基础3——制作镜像(基于容器)

    镜像可以理解为应用程序的集装箱,而docker用来装卸集装箱。 docker镜像含有启动容器所需要的文件系统及其内容,所以镜像是用于创建并启动容器。 docker镜像采用分层构建机制,最底层为bootfs,其上为rootfs。 bootfs:用于系统引导的文件系统,包括bootloader和kernel,容器启动完

    2024年02月07日
    浏览(55)
  • 【Linux|Docker】以CentOS 7为基础镜像制作一个目标镜像(Nginx)

    ==== 需要哪些东西? 1.nginx的安装脚本 install_nginx.sh 源码 https://nginx.org/download/nginx-1.23.3.tar.gz 2.Dockerfile 3.1 准备环境,新建目录 3.2 编写一个编译安装nginx的脚本 为了提高效率,编写一个脚本执行,一次性编译安装好! vim install_nginx.sh 脚本文件内容如下: 3.3 编写Dockerfile 编写

    2024年02月14日
    浏览(48)
  • docker搭建SSH镜像、systemctl镜像、nginx镜像、tomcat镜像

    目录 一、SSH镜像 二、systemctl镜像 三、nginx镜像 四、tomcat镜像 五、mysql镜像 一、SSH镜像 1、开启ip转发功能 2、 3、生成镜像    4、启动容器并修改root密码 二、systemctl镜像 1、 2、生成镜像 3、启动容器,并挂载宿主机目录挂载到容器中,和进行初始化 4、进入容器 三、nginx镜

    2024年01月16日
    浏览(44)
  • docker || nginx镜像制作

        1.以centos7作为基础镜像     2.安装好ip,vim,ping命令     3.编译安装nginx(编写脚本)     4.使用指定的配置文件nginx.conf       5.启动容器的时候启动nginx     6.网站的网页上传到容器里:              1.直接做到镜像里             2.使用数据卷挂载使

    2024年02月08日
    浏览(52)
  • 多架构Docker镜像制作

    从https://github.com/docker/buildx/releases网站下载二进制文件到本地并重命名为docker-buildx,移动到 docker 的插件目录 ~/.docker/cli-plugins。 增加可执行权限:

    2024年02月13日
    浏览(61)
  • docker制作镜像

    docker制作镜像有两种: 1.docker  build dockerfile  2.基于容器制作镜像 语法:docker  commit   options  容器名称 参数: -a:作者 -c:修改dockfile创建的镜像 -m:提交信息 -p:在提交期间暂停容器  例子: 一台主机可以有多个dockerfile,并且dockerfile中涉及的文件需要和当前dockerfile同

    2024年02月14日
    浏览(48)
  • docker 镜像的制作

    本文主要介绍镜像制作,以及周边比如镜像支持中文等问题 将本机系统里主要文件打成tar 包,然后编写dockerfile.txt 文件,最后docker build,以下以centos 7.9 为例 2.1.1 制作tar 包 2.1.2 编写dockerfile.txt 可以借鉴dockerhub 官网的的dockerfile 2.1.3 制作docker image centos79dockerfile.txt 跟systemcent

    2024年02月09日
    浏览(59)
  • Docker制作SpringBoot镜像

    Dcokerfile目录 编写Dockerfile 在dockerfile中,声明了操作系统的环境变量,暴露了端口号,用CMD命令指定容器启动后的命令,这里是启动jar包。 注意: CMD 命令不要写在一个字符串中,而是要以数组的形式分开写。 镜像构建 docker build -t app:1.0 . 查看镜像 这些镜像名和标签名都是

    2024年02月14日
    浏览(51)
  • docker镜像制作

    FROM:指定构建使用的基础镜像,FROM命令必须写在其他的指令前 MAINTAINER:用于为Dockerfile署名 ADD:复制文件并解压到镜像中的指定位置 ENV:设置镜像中的环境变量 COPY:类似于ADD,将CentOS7中的文件赋值到镜像中的某个位置 RUN:普通命令,后面紧跟具体的操作指令 EXPOSE:声明

    2023年04月22日
    浏览(37)
  • Docker镜像与制作

    Docker镜像是没有内核的,镜像在启动为容器后将直接使用宿主机的内核。 Docker镜像的制作分为了手动制作和自动制作(基于DockerFile) 先准备一个目录, 编写Dockerfile文件 在该目录下编写nginx.conf文件 构建docker镜像: -f 后跟Dockerfile所在的路径 -t 后跟构建的镜像名 :v1 表示版本

    2024年02月04日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包