This answer might arrive late but here it goes.
I use this sort of flow to clean the images (and more) from the agent:
- job: DockerCleanBuildAndTest
displayName: Docker Build and Test
workspace:
clean: all
steps:
- task: DockerCompose@0
displayName: Clean
inputs:
containerregistrytype: 'Container Registry'
dockerRegistryEndpoint: ${{ variables['container-registry-name'] }}
dockerComposeFile: '**/docker-compose.yml'
action: 'Run a Docker Compose command'
dockerComposeCommand: down
detached: false
- task: DockerCompose@0
displayName: Run Tests
inputs:
containerregistrytype: 'Container Registry'
dockerRegistryEndpoint: ${{ variables['container-registry-name'] }}
dockerComposeFile: '**/docker-compose.yml'
action: 'Run a Docker Compose command'
dockerComposeCommand: 'run all-tests'
detached: false
Maybe in your case it would be something like:
- job: DockerCleanBuildAndTest
displayName: Docker Build and Test
workspace:
clean: all
steps:
- task: DockerCompose@0
displayName: Clean
inputs:
containerregistrytype: 'Container Registry'
dockerRegistryEndpoint: ${{ variables['container-registry-name'] }}
dockerComposeFile: '**/docker-compose.yml'
action: 'Run a Docker Compose command'
dockerComposeCommand: rm # <---
detached: false
- task: DockerCompose@0
displayName: Run Tests
inputs:
containerregistrytype: 'Container Registry'
dockerRegistryEndpoint: ${{ variables['container-registry-name'] }}
dockerComposeFile: '**/docker-compose.yml'
action: 'Run a Docker Compose command'
dockerComposeCommand: 'run all-tests'
detached: false
Reference: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/docker-compose?view=azure-devops
docker rm <CONTAINER_ID>
– vitkarpovdocker rm <IMAGE_ID>
? Can't hardcode it! – variabledocker rm $(docker ps -a -q)
. Probably you can get the ids you need usingdocker ps
. – vitkarpovdocker rmi <image id>
does. – Frank Nielsen