# docker_wrapper v0.1.2 - API Reference

## Modules

- Core
  - [Docker](Docker.md): A typed Elixir wrapper for the Docker CLI.
  - [Docker.Command](Docker.Command.md): Behaviour and runner for Docker commands.
  - [Docker.Config](Docker.Config.md): Configuration for the Docker CLI wrapper.

- Data Structures
  - [Docker.ContainerId](Docker.ContainerId.md): A Docker container ID with both full and short forms.

  - [Docker.Error](Docker.Error.md): Error returned when a Docker command fails.

  - [Docker.Result](Docker.Result.md): The raw result of a successful Docker command execution.

- Container Lifecycle
  - [Docker.Commands.Create](Docker.Commands.Create.md): Implements the `Docker.Command` behaviour for `docker create`.
  - [Docker.Commands.Kill](Docker.Commands.Kill.md): Implements the `Docker.Command` behaviour for `docker kill`.

  - [Docker.Commands.Pause](Docker.Commands.Pause.md): Implements the `Docker.Command` behaviour for `docker pause`.

  - [Docker.Commands.Restart](Docker.Commands.Restart.md): Implements the `Docker.Command` behaviour for `docker restart`.

  - [Docker.Commands.Rm](Docker.Commands.Rm.md): Implements the `Docker.Command` behaviour for `docker rm`.

  - [Docker.Commands.Run](Docker.Commands.Run.md): Implements the `Docker.Command` behaviour for `docker run`.
  - [Docker.Commands.Start](Docker.Commands.Start.md): Implements the `Docker.Command` behaviour for `docker start`.

  - [Docker.Commands.Stop](Docker.Commands.Stop.md): Implements the `Docker.Command` behaviour for `docker stop`.

  - [Docker.Commands.Unpause](Docker.Commands.Unpause.md): Implements the `Docker.Command` behaviour for `docker unpause`.

- Container Inspection
  - [Docker.Commands.Exec](Docker.Commands.Exec.md): Implements the `Docker.Command` behaviour for `docker exec`.
  - [Docker.Commands.Inspect](Docker.Commands.Inspect.md): Implements the `Docker.Command` behaviour for `docker inspect`.
  - [Docker.Commands.Logs](Docker.Commands.Logs.md): Implements the `Docker.Command` behaviour for `docker logs`.
  - [Docker.Commands.Ps](Docker.Commands.Ps.md): Implements the `Docker.Command` behaviour for `docker ps`.

- Images
  - [Docker.Commands.Build](Docker.Commands.Build.md): Implements the `Docker.Command` behaviour for `docker build`.
  - [Docker.Commands.History](Docker.Commands.History.md): Implements the `Docker.Command` behaviour for `docker history`.
  - [Docker.Commands.Images](Docker.Commands.Images.md): Implements the `Docker.Command` behaviour for `docker images`.
  - [Docker.Commands.Import](Docker.Commands.Import.md): Implements the `Docker.Command` behaviour for `docker import`.

  - [Docker.Commands.Load](Docker.Commands.Load.md): Implements the `Docker.Command` behaviour for `docker load`.

  - [Docker.Commands.Pull](Docker.Commands.Pull.md): Implements the `Docker.Command` behaviour for `docker pull`.
  - [Docker.Commands.Push](Docker.Commands.Push.md): Implements the `Docker.Command` behaviour for `docker push`.

  - [Docker.Commands.Rmi](Docker.Commands.Rmi.md): Implements the `Docker.Command` behaviour for `docker rmi`.

  - [Docker.Commands.Save](Docker.Commands.Save.md): Implements the `Docker.Command` behaviour for `docker save`.

  - [Docker.Commands.Search](Docker.Commands.Search.md): Implements the `Docker.Command` behaviour for `docker search`.
  - [Docker.Commands.Tag](Docker.Commands.Tag.md): Implements the `Docker.Command` behaviour for `docker tag`.

- Networks
  - [Docker.Commands.Network.Connect](Docker.Commands.Network.Connect.md): Implements the `Docker.Command` behaviour for `docker network connect`.

  - [Docker.Commands.Network.Create](Docker.Commands.Network.Create.md): Implements the `Docker.Command` behaviour for `docker network create`.

  - [Docker.Commands.Network.Disconnect](Docker.Commands.Network.Disconnect.md): Implements the `Docker.Command` behaviour for `docker network disconnect`.

  - [Docker.Commands.Network.Inspect](Docker.Commands.Network.Inspect.md): Implements the `Docker.Command` behaviour for `docker network inspect`.

  - [Docker.Commands.Network.Ls](Docker.Commands.Network.Ls.md): Implements the `Docker.Command` behaviour for `docker network ls`.
  - [Docker.Commands.Network.Prune](Docker.Commands.Network.Prune.md): Implements the `Docker.Command` behaviour for `docker network prune`.

  - [Docker.Commands.Network.Rm](Docker.Commands.Network.Rm.md): Implements the `Docker.Command` behaviour for `docker network rm`.

- Volumes
  - [Docker.Commands.Volume.Create](Docker.Commands.Volume.Create.md): Implements the `Docker.Command` behaviour for `docker volume create`.

  - [Docker.Commands.Volume.Inspect](Docker.Commands.Volume.Inspect.md): Implements the `Docker.Command` behaviour for `docker volume inspect`.

  - [Docker.Commands.Volume.Ls](Docker.Commands.Volume.Ls.md): Implements the `Docker.Command` behaviour for `docker volume ls`.
  - [Docker.Commands.Volume.Prune](Docker.Commands.Volume.Prune.md): Implements the `Docker.Command` behaviour for `docker volume prune`.

  - [Docker.Commands.Volume.Rm](Docker.Commands.Volume.Rm.md): Implements the `Docker.Command` behaviour for `docker volume rm`.

- Compose
  - [Docker.Commands.Compose.Build](Docker.Commands.Compose.Build.md): Implements the `Docker.Command` behaviour for `docker compose build`.

  - [Docker.Commands.Compose.Common](Docker.Commands.Compose.Common.md): Shared fields and arg helpers for compose subcommands.
  - [Docker.Commands.Compose.Config](Docker.Commands.Compose.Config.md): Implements the `Docker.Command` behaviour for `docker compose config`.

  - [Docker.Commands.Compose.Create](Docker.Commands.Compose.Create.md): Implements the `Docker.Command` behaviour for `docker compose create`.

  - [Docker.Commands.Compose.Down](Docker.Commands.Compose.Down.md): Implements the `Docker.Command` behaviour for `docker compose down`.

  - [Docker.Commands.Compose.Exec](Docker.Commands.Compose.Exec.md): Implements the `Docker.Command` behaviour for `docker compose exec`.

  - [Docker.Commands.Compose.Images](Docker.Commands.Compose.Images.md): Implements the `Docker.Command` behaviour for `docker compose images`.

  - [Docker.Commands.Compose.Logs](Docker.Commands.Compose.Logs.md): Implements the `Docker.Command` behaviour for `docker compose logs`.

  - [Docker.Commands.Compose.Port](Docker.Commands.Compose.Port.md): Implements the `Docker.Command` behaviour for `docker compose port`.

  - [Docker.Commands.Compose.Ps](Docker.Commands.Compose.Ps.md): Implements the `Docker.Command` behaviour for `docker compose ps`.

  - [Docker.Commands.Compose.Pull](Docker.Commands.Compose.Pull.md): Implements the `Docker.Command` behaviour for `docker compose pull`.

  - [Docker.Commands.Compose.Push](Docker.Commands.Compose.Push.md): Implements the `Docker.Command` behaviour for `docker compose push`.

  - [Docker.Commands.Compose.Restart](Docker.Commands.Compose.Restart.md): Implements the `Docker.Command` behaviour for `docker compose restart`.

  - [Docker.Commands.Compose.Rm](Docker.Commands.Compose.Rm.md): Implements the `Docker.Command` behaviour for `docker compose rm`.

  - [Docker.Commands.Compose.Run](Docker.Commands.Compose.Run.md): Implements the `Docker.Command` behaviour for `docker compose run`.

  - [Docker.Commands.Compose.Start](Docker.Commands.Compose.Start.md): Implements the `Docker.Command` behaviour for `docker compose start`.

  - [Docker.Commands.Compose.Stop](Docker.Commands.Compose.Stop.md): Implements the `Docker.Command` behaviour for `docker compose stop`.

  - [Docker.Commands.Compose.Top](Docker.Commands.Compose.Top.md): Implements the `Docker.Command` behaviour for `docker compose top`.

  - [Docker.Commands.Compose.Up](Docker.Commands.Compose.Up.md): Implements the `Docker.Command` behaviour for `docker compose up`.

- Builder / Buildx
  - [Docker.Commands.Builder.Bake](Docker.Commands.Builder.Bake.md): Implements the `Docker.Command` behaviour for `docker buildx bake`.

  - [Docker.Commands.Builder.Build](Docker.Commands.Builder.Build.md): Implements the `Docker.Command` behaviour for `docker buildx build`.
  - [Docker.Commands.Builder.Create](Docker.Commands.Builder.Create.md): Implements the `Docker.Command` behaviour for `docker buildx create`.

  - [Docker.Commands.Builder.Inspect](Docker.Commands.Builder.Inspect.md): Implements the `Docker.Command` behaviour for `docker buildx inspect`.

  - [Docker.Commands.Builder.Ls](Docker.Commands.Builder.Ls.md): Implements the `Docker.Command` behaviour for `docker buildx ls`.

  - [Docker.Commands.Builder.Prune](Docker.Commands.Builder.Prune.md): Implements the `Docker.Command` behaviour for `docker builder prune`.

  - [Docker.Commands.Builder.Rm](Docker.Commands.Builder.Rm.md): Implements the `Docker.Command` behaviour for `docker buildx rm`.

  - [Docker.Commands.Builder.Stop](Docker.Commands.Builder.Stop.md): Implements the `Docker.Command` behaviour for `docker buildx stop`.

  - [Docker.Commands.Builder.Use](Docker.Commands.Builder.Use.md): Implements the `Docker.Command` behaviour for `docker buildx use`.

- System
  - [Docker.Commands.System.Df](Docker.Commands.System.Df.md): Implements the `Docker.Command` behaviour for `docker system df`.

  - [Docker.Commands.System.Events](Docker.Commands.System.Events.md): Implements the `Docker.Command` behaviour for `docker events`.
  - [Docker.Commands.System.Info](Docker.Commands.System.Info.md): Implements the `Docker.Command` behaviour for `docker info`.

  - [Docker.Commands.System.Login](Docker.Commands.System.Login.md): Implements the `Docker.Command` behaviour for `docker login`.

  - [Docker.Commands.System.Logout](Docker.Commands.System.Logout.md): Implements the `Docker.Command` behaviour for `docker logout`.

  - [Docker.Commands.System.Prune](Docker.Commands.System.Prune.md): Implements the `Docker.Command` behaviour for `docker system prune`.

  - [Docker.Commands.System.Version](Docker.Commands.System.Version.md): Implements the `Docker.Command` behaviour for `docker version`.

- Context
  - [Docker.Commands.Context.Create](Docker.Commands.Context.Create.md): Implements the `Docker.Command` behaviour for `docker context create`.

  - [Docker.Commands.Context.Inspect](Docker.Commands.Context.Inspect.md): Implements the `Docker.Command` behaviour for `docker context inspect`.

  - [Docker.Commands.Context.Ls](Docker.Commands.Context.Ls.md): Implements the `Docker.Command` behaviour for `docker context ls`.

  - [Docker.Commands.Context.Rm](Docker.Commands.Context.Rm.md): Implements the `Docker.Command` behaviour for `docker context rm`.

  - [Docker.Commands.Context.Update](Docker.Commands.Context.Update.md): Implements the `Docker.Command` behaviour for `docker context update`.

  - [Docker.Commands.Context.Use](Docker.Commands.Context.Use.md): Implements the `Docker.Command` behaviour for `docker context use`.

- Swarm
  - [Docker.Commands.Swarm.Ca](Docker.Commands.Swarm.Ca.md): Implements the `Docker.Command` behaviour for `docker swarm ca`.

  - [Docker.Commands.Swarm.Init](Docker.Commands.Swarm.Init.md): Implements the `Docker.Command` behaviour for `docker swarm init`.

  - [Docker.Commands.Swarm.Join](Docker.Commands.Swarm.Join.md): Implements the `Docker.Command` behaviour for `docker swarm join`.

  - [Docker.Commands.Swarm.JoinToken](Docker.Commands.Swarm.JoinToken.md): Implements the `Docker.Command` behaviour for `docker swarm join-token`.

  - [Docker.Commands.Swarm.Leave](Docker.Commands.Swarm.Leave.md): Implements the `Docker.Command` behaviour for `docker swarm leave`.

  - [Docker.Commands.Swarm.Unlock](Docker.Commands.Swarm.Unlock.md): Implements the `Docker.Command` behaviour for `docker swarm unlock`.

  - [Docker.Commands.Swarm.UnlockKey](Docker.Commands.Swarm.UnlockKey.md): Implements the `Docker.Command` behaviour for `docker swarm unlock-key`.

  - [Docker.Commands.Swarm.Update](Docker.Commands.Swarm.Update.md): Implements the `Docker.Command` behaviour for `docker swarm update`.

- Manifest
  - [Docker.Commands.Manifest.Annotate](Docker.Commands.Manifest.Annotate.md): Implements the `Docker.Command` behaviour for `docker manifest annotate`.

  - [Docker.Commands.Manifest.Create](Docker.Commands.Manifest.Create.md): Implements the `Docker.Command` behaviour for `docker manifest create`.

  - [Docker.Commands.Manifest.Inspect](Docker.Commands.Manifest.Inspect.md): Implements the `Docker.Command` behaviour for `docker manifest inspect`.

  - [Docker.Commands.Manifest.Push](Docker.Commands.Manifest.Push.md): Implements the `Docker.Command` behaviour for `docker manifest push`.

  - [Docker.Commands.Manifest.Rm](Docker.Commands.Manifest.Rm.md): Implements the `Docker.Command` behaviour for `docker manifest rm`.

- Prune
  - [Docker.Commands.ContainerPrune](Docker.Commands.ContainerPrune.md): Implements the `Docker.Command` behaviour for `docker container prune`.

  - [Docker.Commands.ImagePrune](Docker.Commands.ImagePrune.md): Implements the `Docker.Command` behaviour for `docker image prune`.

- BEAM Extensions
  - [Docker.Stream](Docker.Stream.md): Port-based streaming for long-running Docker commands.
  - [Docker.Supervised](Docker.Supervised.md): A GenServer wrapping the full container lifecycle under OTP supervision.

- Debug
  - [Docker.Debug.Config](Docker.Debug.Config.md): Debug configuration for Docker command execution.
  - [Docker.Debug.Executor](Docker.Debug.Executor.md): Retry-aware command executor with dry-run and verbose logging support.
  - [Docker.Debug.Retry](Docker.Debug.Retry.md): Retry policy for Docker command execution.

- Internals
  - [Docker.Commands.Generic](Docker.Commands.Generic.md): Escape hatch for running arbitrary Docker commands.
  - [Docker.Commands.Init](Docker.Commands.Init.md): Implements the `Docker.Command` behaviour for `docker init`.

  - [Docker.Telemetry](Docker.Telemetry.md): Telemetry event definitions for docker_wrapper.

