notrust 是一个预配置权限的 Rust 运行容器,基于 Alpine 构建。
46
notrust 是一个预配置权限的 Rust 运行容器,基于 Alpine 构建。
Rust 编译出来是静态二进制,不需要运行时环境,所以没有版本矩阵。
appuserAsia/Shanghai,语言 zh_CN.UTF-8/app/Bin、/app/Log、/app/Temp,权限 775/app 声明为 VOLUMEdocker run 时镜像名后面的参数会追加到启动命令之后docker pull nixue/notrust:alpine
docker run -d \
--name myapp \
-p 8080:8080 \
-v /宿主机/应用目录:/app \
nixue/notrust:alpine
容器自动执行:
/app/NotApp
| 变量 | 默认值 | 说明 |
|---|---|---|
APP_BIN | NotApp | 要运行的二进制文件名 |
docker run -d \
-e APP_BIN=hkrm-server \
-v /宿主机/应用目录:/app \
nixue/notrust:alpine \
--port 8080
Rust 二进制需要用 musl target 编译,才能在 Alpine 里跑:
FROM rust:1.83-alpine AS builder
RUN apk add --no-cache musl-dev
WORKDIR /build
COPY . .
RUN cargo build --release --target x86_64-unknown-linux-musl
FROM nixue/notrust:alpine
COPY --from=builder /build/target/x86_64-unknown-linux-musl/release/NotApp /app/NotApp
如果编译时用的是 gnu target(默认),在 Alpine 上可能因 glibc 缺失而跑不起来。用 musl target 最稳。
Content type
Image
Digest
sha256:5b0835560…
Size
3.9 MB
Last updated
25 days ago
docker pull nixue/notrust:alpine