# Docker Compose Elixir
Elixir library to work with Docker Compose V2.
It wraps around the [docker compose](https://docs.docker.com/compose) and provides subset
of the capabilities directly from Elixir.
## Installation
It's available in Hex, just add the snippet below to your dependencies.
```elixir
{:docker_compose, "~> 1.0"}
```
Documentation can be found at [HexDocs](https://hexdocs.pm/docker_compose).
Make sure you have the `docker compose` command
[available and working](https://docs.docker.com/compose/install/linux/), this library is only a
wrapper around it. If running the app inside docker make sure the container has access to the docker
socket and that the `docker compose` inside the docker container works fine.
## Using the library
The simplest and prob. most used command is `up` to start services defined in a compose definition.
```elixir
DockerCompose.up()
```
If the compose is not located in the standard location you can use `compose_path` parameter, there
are few other parameters for the most common scenarios, e.g. you can only start a specific services.
```elixir
DockerCompose.up(compose_path: "docker/my-compose.yml", service: "db", service: "kafka")
```
For the full list of commands and options check out the official documentation at
[HexDocs](https://hexdocs.pm/docker_compose).
## Collaboration
If you found a bug or if you want some feature, feel free to open an issue or PR. We are open for
collaboration! The library is not 100% complete, it implements what was needed at the time. However,
it is very simple to add other options or commands, so feel free to open PRs.