В связанных документах написано:
Чтобы удалить работающий контейнер, добавьте следующий код в файл манифеста. Это также удаляет файл службы systemd, связанный с контейнером.
docker::run { 'helloworld':
ensure => absent,
}
Что касается команды docker sudo docker rm -f $(sudo docker ps -a -q)
для удаления контейнеров через s sh, у вас есть лучший вариант:
$ docker container prune --help
Usage: docker container prune [OPTIONS]
Remove all stopped containers
Options:
--filter filter Provide filter values (e.g. 'until=<timestamp>')
-f, --force Do not prompt for confirmation
Таким образом, эквивалент будет:
docker container prune --force
И вы можете автоматизировать эту команду s sh с помощью марионетки, не нужно вручную вводить s sh в машину. Проверьте их документы, чтобы запустить команды оболочки без установки агента или использовать команду Bolt , если на удаленном хосте уже установлен агент.