Dockerfile定制Tomcat镜像

  • Dockerfile中的打包命令
  1. FROM : 以某个基础镜像作为此镜像的基础

  2. RUN : RUN后面跟着linux常用命令,如RUN echo xxx >> xxx,注意,RUN 不能用于执行命令,因为每个RUN都是独立运行的,RUN 的cd对镜像中的目录无效。

  3. WORKDIR : 此命令用于切换目录,相当于 cd

  4. COPY : 用于将宿主机的文件,复制到容器中

  5. ADD : 用于将宿主机的文件,复制到容器中

  6. CMD :用于启动容器后,默认的执行命令

  7. ENTRYPOINT : 用于启动容器后,默认的执行命令

  8. ENV 设置环境变量 : ENV MYSQL_ROOT_PASSWORD 123456 ,用于设置操作系统级别的环境变量,程序可以获取操作系统的变量进行配置和使用。

  9. EXPOSE :将容器中的端口暴露出去,便于宿主机挂载

  • 定制Tomcat镜像

定制Tomcat镜像实现可以访问默认的index.html,并将宿主机的文件复制到容器中

bash 复制代码
FROM tomcat
#切换工作目录
WORKDIR /usr/local/tomcat/webapps
#创建文件夹
RUN mkdir ROOT

#切换工作目录
WORKDIR /usr/local/tomcat/webapps/ROOT

#创建文件
RUN echo '<h1 style="color:red">Hello Tomcat</h1>' >> index.html

#将宿主机的图片拷贝到容器中
COPY test.html /usr/local/tomcat/webapps/ROOT/

构建Docker镜像

docker build -t mytomcat:v1.0 .

运行自己创建的镜像

docker run -d -p 8100:8080 mytomcat:v1.0

注意,一定不要忘记添加v1.0,否则会找latest版本。

查看运行效果


镜像定制成功

相关推荐
前端工作日常1 小时前
我学习到的Java中domain和dto区别
java·后端
码农学院1 小时前
基于Spring Boot的跨境电商多语言订单管理系统架构设计
java·大数据·spring boot
技术小结-李爽2 小时前
【工具】pom文件的<packaging>
java·maven
l156469483 小时前
突围!图文混合知识库难以解析,Kimi-K3 原生视觉架构深耕知识工作,DMXAPI 统一接口,缩短项目开发周期
java·大数据·开发语言
布吉岛的石头4 小时前
Java 程序员第 45 阶段11:网关统一路由大模型接口,配合 Nacos 配置治理,灰度路由:基于Nacos元数据实现大模型服务灰度发布与权重路由
java·服务发现
我命由我123454 小时前
Android 开发问题:Cannot resolve method ‘repeat‘ in ‘String‘
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
baozhengw4 小时前
信创改造-SpringBootJar包改为WAR包部署Tomcat
java·tomcat
M1A15 小时前
基于 Spring AOP 构建系统操作日志:从注解设计到异步落库的完整实战
java
RainCity5 小时前
Java Swing 自定义组件库分享(十五)
java·笔记·后端
farerboy5 小时前
23-Java 构造函数
java·后端