
foresterre/cargo-msrv本镜像为cargo-msrv工具提供容器化部署,cargo-msrv是一款用于查找、验证Rust项目最低支持Rust版本(Minimum Supported Rust Version, MSRV)的命令行工具。通过Docker镜像,用户可在无需本地安装Rustup及cargo环境的情况下,快速使用cargo-msrv的全部功能,确保跨环境使用的一致性。
Cargo.toml中的package.rust-version或package.metadata.msrv字段)。Cargo.toml。从Docker Hub拉取(推荐)
bashdocker pull foresterre/cargo-msrv
本地构建镜像
bash# 克隆仓库 git clone [***] cd cargo-msrv # 构建镜像 docker build -t cargo-msrv .
需将本地Rust项目目录挂载至容器内/app目录,基本命令格式:
bashdocker run -t -v "$(pwd)":/app foresterre/cargo-msrv [cargo-msrv命令及选项]
常用命令示例:
查找当前项目MSRV:
bashdocker run -t -v "$(pwd)":/app foresterre/cargo-msrv msrv find
验证项目声明的MSRV:
bashdocker run -t -v "$(pwd)":/app foresterre/cargo-msrv msrv verify
列出依赖项的MSRV:
bashdocker run -t -v "$(pwd)":/app foresterre/cargo-msrv msrv list
显示当前项目声明的MSRV:
bashdocker run -t -v "$(pwd)":/app foresterre/cargo-msrv msrv show
| 参数 | 说明 |
|---|---|
--path <dir> | 指定Rust项目目录路径(容器内路径,需通过-v挂载本地目录至容器内对应路径) |
--manifest-path <path> | 指定Cargo manifest文件路径(如/app/Cargo.toml) |
| 参数 | 说明 | 可选值 | 默认值 |
|---|---|---|---|
--output-format <format> | 设置输出格式 | human(进度条)、json、minimal(仅结果) | human |
--no-user-output | 禁用用户输出(如进度条、结果提示) | - | - |
| 参数 | 说明 | 可选值 | 默认值 |
|---|---|---|---|
--no-log | 禁用日志输出 | - | - |
--log-target <target> | 指定日志输出目标 | file(文件)、stdout(标准输出) | file |
--log-level <level> | 指定日志级别(severity) | trace、debug、info、warn、error | info |
通过--output-format json启用JSON输出,事件以JSON行(json lines)形式打印,每行包含type字段指示事件类型(如版本检查开始、检查结果等)。示例命令:
bashdocker run -t -v "$(pwd)":/app foresterre/cargo-msrv msrv find --output-format json
详细JSON事件类型及结构可参考cargo-msrv官方文档。
/app目录(或通过--path指定其他容器内路径),否则工具无法访问项目文件。msrv find和msrv verify等依赖Rustup的命令,无需用户额外配置。cargo check),可通过--传递,例如:docker run ... cargo-msrv msrv find -- cargo check --tests。



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务