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
相关推荐
藥瓿亭37 分钟前
K8S认证|CKS题库+答案| 7. Dockerfile 检测
运维·ubuntu·docker·云原生·容器·kubernetes·cks
容器魔方1 小时前
KubeCon 抢鲜 | Kmesh与你共创高性能流量治理更优方案
云原生·容器·云计算
杰哥技术分享2 小时前
在 CentOS 上安装 Docker 和 Docker Compose 并配置使用国内镜像源
linux·docker·centos
Gold Steps.3 小时前
Docker容器部署elasticsearch8.*与Kibana8.*版本使用filebeat采集日志
运维·docker·云原生·es
t198751283 小时前
Linux 上的 Tomcat 端口占用排查
linux·tomcat·firefox
Java陈序员5 小时前
再见 Navicat!一款开源的 Web 数据库管理工具!
java·react.js·docker
MickeyCV17 小时前
使用Docker部署MySQL&Redis容器与常见命令
redis·mysql·docker·容器·wsl·镜像
棠十一17 小时前
Rabbitmq
分布式·docker·rabbitmq
藥瓿亭18 小时前
K8S认证|CKS题库+答案| 6. 创建 Secret
运维·ubuntu·docker·云原生·容器·kubernetes·cks
2302_8097983218 小时前
【JavaWeb】Docker项目部署
java·运维·后端·青少年编程·docker·容器