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版本。

查看运行效果


镜像定制成功

相关推荐
SWAGGY..8 分钟前
【C++初阶】:(15)模板进阶--从非类型参数到模板特化与分离编译
java·服务器·前端
楠楠子呀30 分钟前
独立站聊天转化全链路:从二维码引流到数据复盘
java·javascript·数据仓库·python·c#·自动化·etl
yurenpai(27届找实习中)31 分钟前
从零读懂AI智能客服(二):Java 多模块项目如何协作:Maven 依赖、Spring 注入与运行时装配
java·spring·maven
有来技术1 小时前
youlai-boot 实战:MinIO 停止维护,Docker 迁移 RustFS 完整记录
java·后端·docker
吴声子夜歌1 小时前
Java面试——设计模式(二)
java·设计模式·面试
JAVA面经实录9171 小时前
MySQL问题定位与性能优化完整知识体系
java·jvm·数据库·mysql·性能优化
Rain的Java大神之路1 小时前
Docker搭建Redis集群完全指南
java·运维·redis·后端·docker·容器·架构
Raas1001 小时前
大模型网关和API网关区别是什么?MAI Gateway统一AI流量治理
java·大数据·运维·人工智能·gateway·企业级·ai网关
BioRunYiXue1 小时前
RACE技术全攻略:从全长克隆到靶基因验证
java·javascript·网络·人工智能·科技·算法·eclipse
AC赳赳老秦2 小时前
个保法下数据处理:OpenClaw 自动过滤公开数据中的个人信息,保障采集分析合规性
java·python·sqlite·json·php·deepseek·openclaw