构建Tomcat镜像
1.准备镜像文件tomcat压缩包,jdk压缩包
wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz
wget -b --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.tar.gz
2.编写dockerfile,官方命名 Dockerfile,build会自动寻找这个文件,就不需要-f指定了
[root@VM-16-11-centos tomcat]# touch readme.txt
[root@VM-16-11-centos tomcat]# vim Dockerfile
FROM centos
MAINTAINER Z.Bowen<Zon.Gemini@gmail.com>
COPY readme.txt /usr/local/readme.txt
ADD jdk-8u202-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-9.0.45.tar.gz /usr/local/
RUN yum -y install vim
ENV MYPATH /usr/local
WORKDIR $MYPATH
ENV JAVA_HOME /usr/local/jdk1.8.0_202
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.45
ENV CATALINA_BASH /usr/local/apache-tomcat-9.0.45
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
EXPOSE 808
CMD /usr/local/apache-tomcat-9.0.45/bin/startup.sh && tail -F /url/local/apache-tomcat-9.0.45/bin/logs/catalina.out
3.构建镜像
[root@VM-16-11-centos tomcat]# docker build . -t diytomcat
...
Successfully built ee3513bfc81a
Successfully tagged diytomcat:latest
[root@VM-16-11-centos tomcat]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
diytomcat latest ee3513bfc81a 20 seconds ago 686MB
4.启动镜像
[root@VM-16-11-centos tomcat]# docker run -d -p 9090:8080 --name mytomcat -v /home/dockerfile/tomcat/test:/usr/local/apache-tomcat-9.0.45/webapps/test -v /home/dockerfile/tomcat/tomcatlogs:/usr/local/apache-tomcat-9.0.45/logs diytomcat
99c486551c4475e99ef17b360950b37ecf2a9d492d30d39f8837fb2c51e10627
5.访问测试
[root@VM-16-11-centos tomcat]# curl localhost:9090
<!DOCTYPE html>
<html lang="en">
<head>
...
</html>