#docker #validation #parser #api

compose-validatr

用于解析和验证 Docker Compose 清单的库

4 个版本

0.1.3 2023 年 11 月 18 日
0.1.2 2023 年 10 月 12 日
0.1.1 2023 年 10 月 12 日
0.1.0 2023 年 10 月 3 日

#1340解析器实现

27 每月下载量

MIT 许可证

77KB
2K SLoC

Unit Tests and Formatting

compose-validatr

Rust 库,用于验证和检查 Docker Compose 配置

目标

这个库存在的主要原因是用于我正在进行的另一个可视化 docker-compose 配置的 Web 应用程序项目。

这个库主要用来解析 compose yaml 的元数据并进行表面验证。

这个库执行所有验证,除了主机设备和本地文件验证,因为那超出了这个库需要的功能范围。

示例

// Simple docker-compose.yaml &str
let yaml = r#"
services:
  gitlab:
    image: gitlab/gitlab-ce:latest
    container_name: gitlab
    hostname: gitlab
    restart: always
    build:
      context: .
      dockerfile: webapp.Dockerfile
"#;

let compose = Compose::new(yaml).unwrap();
compose.services.keys().for_each(|service_name| println!("Service: {}", service_name));

依赖关系

~4–6MB
~112K SLoC