dockerfile 自定义构建jenkins 。包含开发ant maven java tomcat环境
[root@cdh-node3 file]# ls -l
total 358288
-rw-r--r-- 1 root root 6902627 Oct 29 16:54 apache-ant-1.10.12.tar.gz https://ant.apache.org/bindownload.cgi 下载下来。 手动解压 更改包名为ant 在进行压缩名为apache-ant-1.10.12.tar.gz
-rw-r--r-- 1 root root 156680432 Oct 29 16:53 apache-maven-3.8.3.tar.gz https://maven.apache.org/download.cgi 下载下来。 手动解压 更改包名为maven 在进行压缩名为apache-maven-3.8.3.tar.gz
-rw-r--r-- 1 root root 11553245 Oct 29 17:00 apache-tomcat-9.0.54.tar.gz https://tomcat.apache.org/download-90.cgi 下载下来。 手动解压 更改包名为tomcat 在进行压缩名为apache-tomcat-9.0.54.tar.gz
-rw-r--r-- 1 root root 632 Oct 29 17:12 dockerfile
-rw-r--r-- 1 root root 191732083 Oct 29 17:00 jdk-8u191-linux-x64.tar.gz https://www.oracle.com/java/technologies/downloads/ 下载下来。 手动解压 更改包名为java 在进行压缩名为jdk-8u191-linux-x64.tar.gz
drwxr-xr-x 11 root root 4096 Oct 28 14:43 ROOT https://www.jenkins.io/download/ 下载下来。 手动解压 更改包名为ROOT
二 编辑dockerfile
FROM centos:7
ADD *.tar.gz /usr/local/
ENV LANG="en_US.UTF-8"
ENV JENKINS_HOME="/var/jenkins_home"
ENV MYPATH /usr/local/
ENV JAVA_HOME /usr/local/java
ENV CATALINA_HOME /usr/local/tomcat
ENV CATALINA_BASE /usr/local/tomcat
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
RUN rm -rf /usr/local/tomcat/webapps/* \
&& ln -s /usr/local/java/bin/javac /bin/javac \
&& ln -s /usr/local/maven/bin/mvn /bin/mvn \
&& ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' > /etc/timezone \
&& yum -y install git libgdiplus-devel libunwind libicu lftp
ADD ROOT.war /usr/local/tomcat/webapps/ROOT.war
EXPOSE 8080
CMD ["/usr/local/tomcat/bin/catalina.sh","run"]
三 构建
docker build -t test:test -f dockerfile .

四 启动
docker images |grep test docker run -d -p 8484:8080 test:test
浏览器测试
五 compose形式启动
jenkins.yml
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)