11

I'd like to be able to easily clean up containers after they exit. Is this possible with the remote API? (Other than discovering the exit myself and removing with the DELETE/containers endpoint)

shino
  • 4,562
  • 5
  • 38
  • 57

2 Answers2

9

larsks answer is now outdated. Docker Remote API 1.25 shifted --rm functionality from client to server. There is an AutoRemove flag under HostConfig when creating a container that does exactly this.

Josh
  • 4,078
  • 1
  • 12
  • 7
8

The --rm option in the Docker client is entirely a client side option. This is, for example, why you can't combine -d with --rm -- because the client is only able to remove the container on exit if it stays attached to the container.

You could write a clean up script that would periodically run docker ps -f status=exited -q and clean up the result.

You could also achieve something more automated by monitoring the Docker API's /events endpoint and responding immediately to container exits, I guess.

larsks
  • 277,717
  • 41
  • 399
  • 399