天天看点

dockerfile定制tomcat镜像,你需要的都在这

首先准备好一个文件夹,名字随便,把你想加进去的东东发在这里面。比如:jdk1.8   tomcat8,根据需求来

下面重点dockerfile

FROM centos:7.7

MAINTAINER zhangdd

LABEL Description=”基于CentOS 7,安装了jre 8和tomcat8.5″ Version=”1.0″

#定义root密码

RUN echo “root:123456” | chpasswd

RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \

&& echo ‘Asia/Shanghai’ >/etc/timezone

ENV CATALINA_HOME /webapp/tomcat8

ENV CATALINA_BASE $CATALINA_HOME

ENV PATH $PATH:$CATALINA_HOME/bin

ENV JAVA_HOME /usr/local/jdk1.8.0

ENV PATH $PATH:/$JAVA_HOME/bin

#附加jdk

ADD jdk1.8.0 /usr/local/jdk1.8.0

# 创建tomcat的用户,并自动创建用户目录, 指定tomcat用户使用bash

RUN groupadd -g 1002 tomcat

RUN useradd -d /webapp -u 1002 -g tomcat –shell /bin/bash tomcat

# 设置tomcat用户的密码

RUN echo “tomcat:123-456” | chpasswd

# 将tomcat的压缩包放到 /webapp/tomcat8/ 目录下

ADD tomcat8 /webapp/tomcat8

# 将工作目录切换到 /webapp/tomcat8/, 之后的操作, 的基础目录为 /webapp/tomcat8/

WORKDIR /webapp/

# 修改 /webapp/tomcat8/ 目录的拥有者为tomcat. (默认的拥有者为root)

RUN chown -R tomcat:tomcat /webapp/

#chmod +x

RUN chmod +x /webapp/tomcat8/bin/*

RUN chmod 766 /webapp/tomcat8/logs

# 将当前操作者的身份从root切换为tomcat, 后续所有操作, 都将是以tomcat身份运行

USER tomcat

# 容器监听 8080端口

EXPOSE 8080

# 容器启动后, 自动执行 tomcat的catalina.sh脚本, 以run模式运行tomcat. 这里注意:容器中的服务必须以前台方式运行.

CMD [ “/webapp/tomcat8/bin/catalina.sh”,”run” ]

有需要的拿走,本人亲测成功