- runner-base: alpine 3.18 + 非 root 用户 1000:1000 + /code 工作目录 - runner-python: 基于 base, apk add python3 + python 符号链接(对齐 run_cmd 'python') - runner-node: 基于 base, apk add nodejs - runner.toml: 镜像自描述(运行时实际配置由 Rust LANGUAGES 注册表 + 环境变量决定) - build-runners.sh: 按 base→python→node 顺序构建, tag 与 languages.rs 严格对齐
11 lines
394 B
Docker
11 lines
394 B
Docker
# 代码运行器的共享基础镜像。
|
|
# 仅创建非 root 用户 1000:1000 与 /code 工作目录;具体语言镜像在此基础上安装运行时。
|
|
# 与 src/infra/docker.rs 的 user: "1000:1000"、working_dir: "/code" 对齐。
|
|
FROM alpine:3.18
|
|
|
|
RUN addgroup -S runner && adduser -S runner -G runner -u 1000 \
|
|
&& mkdir -p /code \
|
|
&& chown -R runner:runner /code
|
|
|
|
WORKDIR /code
|