diff --git a/Dockerfile b/Dockerfile index 0617dd0..2fc04df 100755 --- a/Dockerfile +++ b/Dockerfile @@ -1,15 +1,22 @@ -# 使用 Debian slim -FROM debian:12-slim +# 基础镜像 +FROM debian:12.13-slim +# 系统环境配置 ENV LANG=C.UTF-8 \ LC_ALL=C.UTF-8 \ LANGUAGE=C.UTF-8 \ TERM=xterm-256color +# 维护者信息 LABEL maintainer="anian " +# 关键软件版本 ENV NODE_VERSION=20.20.0 -ENV PNPM_VERSION=latest +ENV PNPM_VERSION=10.32.1 +ENV JDK17_VERSION=17.0.18+8 +ENV JDK21_VERSION=21.0.10+7 + +# 将 Node 和 pnpm 加入系统 PATH ENV PATH="/root/.local/share/pnpm:/usr/local/node/bin:${PATH}" # 安装基础工具 @@ -26,13 +33,13 @@ RUN apt-get update && apt-get install -y \ # 创建 Java 目录 RUN mkdir -p /opt/java -# 安装 Java 17 -RUN curl -L https://api.adoptium.net/v3/binary/latest/17/ga/linux/x64/jdk/hotspot/normal/eclipse \ +# 固定版本安装 Java 17 +RUN curl -L https://api.adoptium.net/v3/binary/version/jdk-${JDK17_VERSION}/linux/x64/jdk/hotspot/normal/eclipse \ | tar -xz -C /opt/java \ && mv /opt/java/jdk-17* /opt/java/java17 -# 安装 Java 21 -RUN curl -L https://api.adoptium.net/v3/binary/latest/21/ga/linux/x64/jdk/hotspot/normal/eclipse \ +# 固定版本安装 Java 21 +RUN curl -L https://api.adoptium.net/v3/binary/version/jdk-${JDK21_VERSION}/linux/x64/jdk/hotspot/normal/eclipse \ | tar -xz -C /opt/java \ && mv /opt/java/jdk-21* /opt/java/java21 @@ -54,13 +61,16 @@ RUN mkdir -p /usr/local/node \ # 安装 pnpm RUN npm install -g pnpm@${PNPM_VERSION} -# 添加 Java 切换命令 +# 添加 Java17 切换命令 RUN echo '#!/bin/bash\nupdate-alternatives --set java /opt/java/java17/bin/java\nupdate-alternatives --set javac /opt/java/java17/bin/javac\necho "Switched to Java 17"' > /usr/local/bin/use-java17 \ && chmod +x /usr/local/bin/use-java17 +# 添加 Java21 切换命令 RUN echo '#!/bin/bash\nupdate-alternatives --set java /opt/java/java21/bin/java\nupdate-alternatives --set javac /opt/java/java21/bin/javac\necho "Switched to Java 21"' > /usr/local/bin/use-java21 \ && chmod +x /usr/local/bin/use-java21 +# 设置工作目录为 /app WORKDIR /app +# 容器启动后默认进入 bash 终端 CMD ["/bin/bash"] \ No newline at end of file diff --git a/README.md b/README.md index 9a58c1b..87e5c83 100755 --- a/README.md +++ b/README.md @@ -2,6 +2,9 @@ > 为halo插件开发提供容器环境 +#### v260315-补丁 +1. 固定Debian、Java、node、pnpm版本 + #### v260315 1. 新增Java17、Java21(使用 `use-java17`、`use-java21` 切换) 2. 新增node v20.20.0