Skip to content

Commit d166e12

Browse files
committed
fix: 用 --mount=type=tmpfs 挂载 /tmp,解决 GraalVM 无法执行 C 辅助程序的问题
1 parent e74b75f commit d166e12

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,10 @@ RUN chmod +x mvnw && ./mvnw dependency:go-offline -q
1212

1313
# 复制源码并编译 Native Image
1414
COPY src ./src
15-
# GitHub Actions buildkit 容器中 /tmp 以 noexec 挂载,GraalVM 需要在 /tmp 执行 C 辅助程序
16-
# 将 TMPDIR 指向有执行权限的目录解决此问题
17-
RUN mkdir -p /app/tmp && TMPDIR=/app/tmp ./mvnw -DskipTests -Pnative package
15+
# GitHub Actions buildkit 容器中 /tmp 以 noexec 挂载
16+
# 用 --mount=type=tmpfs 挂载一个有 exec 权限的新 tmpfs,GraalVM 的 C 辅助程序才能执行
17+
RUN --mount=type=tmpfs,target=/tmp \
18+
./mvnw -DskipTests -Pnative package
1819

1920
# 第二阶段:最小化运行镜像
2021
FROM ubuntu:24.04

0 commit comments

Comments
 (0)