dockerfile-rs

Correct Dockerfile generator library


Keywords
dockerfile, generator, docker, dockerfile-generator, rust
Licenses
Apache-2.0/MIT

Documentation

dockerfile-rs

Build Status License crates.io API docs Codecov

Correct Dockerfile generator library

Quick start

use std::{io::{Result, Write}, fs::File};
use dockerfile_rs::{DockerFile, FROM};

fn main() -> Result<()> {
    let docker_file = DockerFile::from(FROM!(nginx:latest))
        .comment("open port for server")
        .expose(80)
        .copy((".", "."))
        .cmd(vec!["echo", "Hello from container!"]);

    // write into file
    let mut file = File::create("nginx.Dockerfile")?;
    write!(&mut file, "{}", docker_file)?;
    
    Ok(())
}

Generated file:

FROM nginx:latest

# open port for server
EXPOSE 80
COPY . .

CMD ["echo", "Hello from container!"]

Changelog

License

dockerfile-rs under either of:

at your option.