-
wird nicht von der Shell analysiert, es ist nur ein Argument, das einige Befehle als "read from stdin" erkennen. Anscheinend tut Docker nicht.
Sie müssen xargs verwenden, um die ID hier als echtes Argument zu übergeben. Das sollte funktionieren:
docker ps | head -2 | grep -v CONTAINER | cut -d' ' -f1 | xargs -I '{}' docker exec -i -t '{}' bash