sig   type image = string   type image_build   val variant_scheme :     ?loc:B0.Def.loc ->     ?doc:string ->     ?image_build:B0_docker.image_build ->     B0_docker.image -> B0.Variant.Scheme.t -> B0.Variant.Scheme.t   type cmd   val get : unit -> B0_docker.cmd B0.result   val cmd : B0_docker.cmd -> B0.Cmd.t   val image_build :     ?opts:B0.Cmd.t -> ?context:string -> B0.Fpath.t -> B0_docker.image_build   val image_create :     B0_docker.cmd ->     B0_docker.image -> B0_docker.image_build -> unit B0.result   val image_exists : B0_docker.cmd -> B0_docker.image -> bool B0.result   val image_delete : B0_docker.cmd -> B0_docker.image -> unit B0.result   type container = string   val container_exists :     B0_docker.cmd -> B0_docker.container -> bool B0.result   val container_create :     B0_docker.cmd ->     ?workdir:B0.Fpath.t ->     ?binds:(B0.Fpath.t * B0.Fpath.t) list ->     B0_docker.image -> B0_docker.container -> unit B0.result   val container_delete :     B0_docker.cmd -> B0_docker.container -> unit B0.result   val container_exec :     B0_docker.cmd ->     B0_docker.container -> B0.Cmd.t -> B0.OS.Cmd.status B0.result end