docker 制作tomcat镜像

  • 需要下载tomcat安装包和jdk安装包,我这边下载的jdk版本分别为(jdk和tomcat版本需要对应上)
bash 复制代码
	apache-tomcat-9.0.78.tar.gz
	jdk-8u381-linux-x64.tar.gz
  • 创建一个readme.txt空文件
bash 复制代码
	readme.txt
  • 创建一个Dockerfile文件
bash 复制代码
# centos系统作为底层
FROM centos
# 作者信息及邮箱
MAINTAINER zrf<1213455555.163.com>
# 将readme.txt复制到容器的/usr/local/readme.txt
COPY readme.txt /usr/local/readme.txt
# 添加两个压缩包到 /usr/local之中,会自动解压缩
ADD jdk-8u381-linux-x64.tar.gz /usr/local
ADD apache-tomcat-9.0.78.tar.gz /usr/local

RUN cd /etc/yum.repos.d/

RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*

RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

RUN yum -y install wget

RUN wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo \

&& yum clean all \

&& yum makecache

RUN yum -y install vim
RUN yum -y install vim

ENV MYPATH /usr/local
# 设置工作目录
WORKDIR $MYPATH

# 配置jdk环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_381
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

# 配置tomcat环境变量
ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.78
ENV CATALINA_BASE /usr/local/apache-tomcat-9.0.78
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin/

# 暴露端口
EXPOSE 8080

# 执行命令
CMD /usr/local/apache-tomcat-9.0.78/bin/startup.sh && tail -F /usr/local/apache-tomcat-9.0.78/bin/logs/catalina.out
  • 构建镜像
bash 复制代码
docker build  -t  mytomcat:1.0 .
  • 查看镜像
bash 复制代码
docker images
  • 创建容器并启动容器
bash 复制代码
docker run -it -d -p 8080:8080 镜像id
相关推荐
闲云自留地6 小时前
Kubernetes 安装保姆级:关 swap、装 containerd、init 集群、calico 一篇通
容器·贪心算法·kubernetes
木雷坞6 小时前
Docker Compose部署Metabase:应用库隔离与日期筛选看板
运维·docker·容器
怒放的生命19916 小时前
前端项目 Docker 打包实操指南
前端·docker·容器
tedcloud1236 小时前
Docker Compose 部署 Immich:手机照片自动备份与常见故障排查
运维·前端·docker·容器·智能手机·开源·流程图
古城小栈6 小时前
Docker Compose 云原生的底座
docker·云原生·容器
paopaokaka_luck6 小时前
校园新闻推荐系统(DeepSeek新闻助手、个性化推荐算法、 Redis热词排行榜、ECharts运营分析、互动与实时通知、新闻运营闭环)
java·spring boot·mysql·spring·tomcat·echarts·intellij idea
卜锦元7 小时前
Docker Compose 部署 Nginx 1.30.6 完整指南
nginx·docker·容器
easy_coder8 小时前
Kubernetes 三大探针:Startup、Liveness 与 Readiness
云原生·容器·kubernetes
xrlfreedom8 小时前
MCP 面试高频考点:把知识库 RAG 检索封装为 Tool,Docker 与结构化输出怎么配合不踩坑
docker·结构化输出·mcp
刘胡子大叔8 小时前
Docker 容器名 ping 不通
运维·docker·容器