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
相关推荐
BullSmall4 小时前
Anolis OS 8.10 Docker 部署 PostgreSQL 15 完整实操
docker·postgresql·容器
java_logo8 小时前
Docker 部署 CUPS Web:浏览器即可管理打印机与打印任务
docker·容器·打印机·轩辕镜像·cups web·cups web 镜像部署·cups web 部署教程
数据知道10 小时前
容器安全入门:Docker 逃逸原理与 5 个经典 CVE
安全·网络安全·docker·容器
run21professional11 小时前
Windows 11 + WSL + Docker Desktop 开发环境设置
运维·docker·容器
张忠琳12 小时前
【NPU】Ascend Docker Runtime v26.0.1 之三 runtime/dcmi/ — 超深度逐行分析
云原生·容器·kubernetes·npu·docker-runtime
giaming02313 小时前
告别Docker Desktop!一款轻量级原生开发环境管理工具:FlyEnv
运维·docker·容器
自强的小白13 小时前
Docker命令
java·docker·容器
xxwl58515 小时前
数据库后端接口测试报告
spring boot·mysql·tomcat
暗影凋落16 小时前
docker-image 工具展示更详细镜像层内容
运维·docker·容器
极客先躯16 小时前
高级java每日一道面试题-2026年05月11日-实战篇[Docker]-如何容器化金融产品推荐系统?
java·运维·docker·容器·金融·高级面试·金融产品推荐系统