# doup

Doup is a command line tool to find and update Docker-Image-Strings in project files.

## Why you should consider using doup

The version of docker images should not set to `latest` to avoid incompatibility and upgrade nightmares.
But containers should also be upgraded regulary to get new features and fixes of security issues.

So you have to check for each container individually if a new version is published on dockerhub.
`doup` can save you a lot of time and is doing this task for you.

### Example

![example-image](./docs/images/example_group_nextcloud.jpg)

## Prepare your project for doup

Each Docker-Image-String has to be marked in the previous line:

```yml
# doup:bullseye:prod
haproxy_docker_image: haproxy:2.6.2-bullseye
```

- `doup`: doup is looking for lines which contains `doup:*`
- `bullseye`: is the container tag on dockerhub which is used to get the newest version
- `prod` (optional): add this Docker-Image-String to a specific group

## QuickSetup

`doup` is published on PyPi and can be installed with `pip install doup`.
Afterwards you should mark some Docker-Version-Strings in your project and run `doup --dry-run`.

## Incoming features

- improve the console output and/or add a verbose options which shows the filenames
    - print the filename in which the Docker-Image-String was found
    - in dry-run mode: print that no changes were made
- alert the user if a new major version of a container was released
- add `doup list groups`
- add `doup list images`
    - list marked Docker-Image-Strings
- add `doup find images`
    - finds not marked Docker-Image-Strings
