Rust library for validating and inspecting docker compose configs
The main reason this library exists is for another web app project I am working on for visualizing docker-compose configs.
This library is primarily meant for parsing the metadata from a compose yaml and performing surface level validation.
This library performs all validation except host device and local files validation, since that is out of scope of what I need this library for.
// 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));