Better pruning of docker volumes during make up/down #22780
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes: mozilla/addons#ISSUENUM
Description
Make up produces several anonymous volumes that sometimes end up in a "dandling" state. This means they are no longer associated with a container and cannot easily be cleaned up by docker compose.
This PR modifies the existing "docker_clean_volumes" command to look for all dangling volumes that are not the database volume (don't want to clean that) and efficiently removes them.
Context
You can easily end up with dozens of volumes that take up space on disk without cleaning them up.
Testing
Make UP
Create a bunch of volumes
Now run
make up
to ensure your containers and non dangling volumes are running.Expect only the volumes associated with running containers to be there.
should return an empty table.
Make DOWN
With already running containers (like above make sure make up is run) create more volumes (see above)
Now run
make down
Expect no dangling volumes (except addons-server_data_mysqld. that should still be there)
Checklist
#ISSUENUM
at the top of your PR to an existing open issue in the mozilla/addons repository.