#reference #parser #tags #domain #buildkit #docker #path

buildkit-rs-reference

基于参考 go 包的图像引用解析器

1 个不稳定版本

0.1.0 2023年4月10日

#891 in Unix APIs

每月 21 次下载
buildkit-rs 中使用

Apache-2.0 OR MIT

38KB
671 代码行

图像引用解析器。

基于规范化的 Docker图像引用解析器

示例

use buildkit_rs_reference::Reference;

// Parse a reference with no domain, an incomplete path, and a tag
let image = "alpine:latest";

let reference = Reference::parse_normalized_named(image).unwrap();
assert_eq!(reference.domain(), "docker.io");
assert_eq!(reference.path().as_deref(), Some("library/alpine"));
assert_eq!(reference.tag(), Some("latest"));

// Parse a reference with a domain and digest
let image = "b.gcr.io/alpine@sha256:86e0e091d0da6bde2456dbb48306f3956bbeb2eae1b5b9a43045843f69fe4aaa";

let reference = Reference::parse_normalized_named(image).unwrap();
assert_eq!(reference.domain(), "b.gcr.io");
assert_eq!(reference.path().as_deref(), Some("alpine"));
assert_eq!(reference.digest(), Some("sha256:86e0e091d0da6bde2456dbb48306f3956bbeb2eae1b5b9a43045843f69fe4aaa"));

依赖关系

~2.4–4MB
~71K SLoC