
14.实战:Dockerfile制作tomcat镜像
实战:Dockerfile制作tomcat镜像
1.准备镜像文件
- tomcat压缩包
- jdk压缩包
2.编写dockerfile文件
官方命名Dockerfile
,build的时候会自动寻找这个文件,不需要-f指定了
FROM centos
MAINTAINER zjzaki<zjzaki@outlook.com>
COPY readme.txt /usr/local/readme.txt
# ADD 命令会自动解压压缩包
ADD jdk-8u151-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-8.5.20.tar.gz /usr/local/
RUN yum -y install vim
ENV MYPATH /usr/local
WORKDIR $MYPATH
ENV JAVA_HOME /usr/local/jdk1.8.0_151
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.20
ENV CATALINA_BASH /usr/local/apache-tomcat-8.5.20
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
EXPOSE 8080
CMD /usr/local/apache-tomcat-8.5.20/bin/startup.sh && tail -f /usr/local/apache-tomcat-8.5.20/bin/logs/catalina.out
3.构建镜像
docker build -t diytomcat .
报错
这是因为Centos8于2021年年底停止了服务,使用yum源安装时候,就会报错:Failed to download metadata for repo ‘AppStream’: Cannot prepare internal mirrorlist: No URLs in mirrorlist”,这时我们需要修改yum源
修改后的dockerfile文件
FROM centos
MAINTAINER zjzaki<zjzaki@outlook.com>
COPY readme.txt /usr/local/readme.txt
# ADD 命令会自动解压压缩包
ADD jdk-8u151-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-8.5.20.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 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
RUN yum clean all
RUN yum makecache
RUN cd /
RUN yum -y install vim
ENV MYPATH /usr/local
WORKDIR $MYPATH
ENV JAVA_HOME /usr/local/jdk1.8.0_151
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.20
ENV CATALINA_BASH /usr/local/apache-tomcat-8.5.20
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
EXPOSE 8080
CMD /usr/local/apache-tomcat-8.5.20/bin/startup.sh && tail -f /usr/local/apache-tomcat-8.5.20/bin/logs/catalina.out
4.启动docker
docker run -d -p 9090:8080 --name zjzakitomcat -v /home/zjzaki/build/tomcat/test:/url/local/apache-tomcat-8.5.20/webapps/test -v /home/zjzaki/build/tomcat/tomcatlogs/:/url/local/apache-tomcat-8.5.20/logs diytomcat
5.访问测试
curl localhost:9090
浏览器访问 公网ip+端口
6.发布项目
由于做了卷挂载可以直接在本地发布
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果