34 lines
2.0 KiB
Docker
34 lines
2.0 KiB
Docker
FROM ubuntu
|
|
|
|
# 一次性安装所有依赖并清理缓存
|
|
RUN apt update -y && \
|
|
apt install -y wget unzip xz-utils curl jq tree less vim dnsutils iputils-ping net-tools lsb-release gnupg-agent apt-transport-https build-essential ca-certificates git
|
|
|
|
# 下载并解压 Gradle、JDK、Node.js
|
|
RUN wget "https://repository.mingliqiye.com/repository/raw/gradle/gradle-8.14.2-all.zip" && \
|
|
unzip -n gradle-8.14.2-all.zip && \
|
|
wget "https://repository.mingliqiye.com/repository/raw/jdk/jdk-8u202-linux-x64.tar.gz" && \
|
|
tar -xzvf jdk-8u202-linux-x64.tar.gz && \
|
|
wget "https://repository.mingliqiye.com/repository/raw/node/node-v22.16.0-linux-x64.tar.xz" && \
|
|
tar -xf node-v22.16.0-linux-x64.tar.xz &&\
|
|
rm -rf *.zip *.tar.gz *.tar.xz
|
|
|
|
# 创建目录并移动文件
|
|
RUN mkdir -p /opt/gradle /opt/node /opt/jdk /data/gradle-local && \
|
|
mv gradle-8.14.2/ /opt/gradle/8.14.2/ && \
|
|
mv node-v22.16.0-linux-x64/ /opt/node/22.16.0/ && \
|
|
mv jdk1.8.0_202/ /opt/jdk/8u202/
|
|
|
|
# 设置环境变量
|
|
ENV GRADLE_USER_HOME="/data/gradle-local" \
|
|
GRADLE_HOME="/opt/gradle/8.14.2" \
|
|
NODE_HOME="/opt/node/22.16.0" \
|
|
JAVA_HOME="/opt/jdk/8u202"
|
|
ENV PATH="${NODE_HOME}/bin:${GRADLE_HOME}/bin:${JAVA_HOME}/bin:${PATH}"
|
|
|
|
# 清理临时文件
|
|
RUN echo "settingsEvaluated { settings -> println \"mingliqiye-repository-cmd: pluginManagement\"; settings.pluginManagement { repositories { maven { url \"https://repository.mingliqiye.com/repository/maven-public/\" }; gradlePluginPortal() } } }; buildscript { repositories { println \"mingliqiye-repository-cmd: repositories\"; maven { url \"https://repository.mingliqiye.com/repository/maven-public/\" } } }; allprojects { println \"mingliqiye-repository-cmd: allprojects \${project.name}\"; repositories { maven { url \"https://repository.mingliqiye.com/repository/maven-public/\" } } }" > ${GRADLE_HOME}/init.d/init.gradle &&\
|
|
gradle && node -v && java -version && \
|
|
rm -rf /tmp/* /build/* && \
|
|
apt clean && \
|
|
rm -rf /var/lib/apt/lists/* |