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
相关推荐
香菜农民27 分钟前
域名证书管理
运维·docker
江湖有缘1 小时前
从零开始:基于Docker Compose的Kener监控面板部署全记录
运维·docker·容器
月光技术杂谈1 小时前
国内环境下安装 docker-ce 的完整步骤
运维·docker·容器
leoZ2313 小时前
Linux 环境常用服务一键部署文档(Docker 版)
运维·docker·容器
追寻少年3 小时前
基于Kubeadm和Docker部署K8S高可用集群
docker·容器·kubernetes
GitCode官方3 小时前
投稿|Git + Docker 零基础入门攻略
git·docker·容器
bukeyiwanshui4 小时前
20260509 docker项目总结
运维·docker·容器
谁在黄金彼岸4 小时前
Docker Compose删除服务后,docker compose down无法关闭的问题解决
docker·容器
数据智能老司机4 小时前
使用 Docker 构建可落地运行的 AI 系统——Docker Desktop:AI/ML 工作流的运行时基础
docker·容器
芥子沫5 小时前
Docker部署OrangeHRM(人事管理)
docker·人事管理·hr应用