Программа удаления образов докера не работает для версии < 1.13
Пробовал следующие команды, но ни одна из них не удаляет изображения.
sudo docker images prune --filter "dangling=true"
sudo docker images prune --all
sudo docker images prune -a
sudo docker images prune
Вывод для обеих команд:
REPOSITORY TAG IMAGE ID CREATED SIZE
Версия докера:
$ sudo docker version
Client:
Version: 1.12.6
API version: 1.24
Go version: go1.6.4
Git commit: 78d1802
Built: Tue Jan 10 20:26:30 2017
OS/Arch: linux/amd64
Server:
Version: 1.12.6
API version: 1.24
Go version: go1.6.4
Git commit: 78d1802
Built: Tue Jan 10 20:26:30 2017
OS/Arch: linux/amd64
Докер Док предлагает эту команду, но я столкнулся с ошибкой
$ sudo docker image prune -a
docker: 'image' is not a docker command.
See 'docker --help'.`
2 ответа
Рассматривая сокращение образа docker и API 1.25 - для Docker Engine 1.13 версия API - 1.25
Удалить неиспользуемые изображения
API клиента и демона должны быть как минимум 1.25, чтобы использовать эту команду. Используйте команду docker version на клиенте, чтобы проверить версии API клиента и демона.
И у вас установлена версия: 1.12.6 и версия API: 1.24, поэтому вам нужно обновить свою версию, чтобы иметь возможность запускать удаление образа докера.
Если вы не хотите (или не можете) выполнить обновление, вы можете использовать docker rmi или docker image rm, которые не имеют указанных версий API, поэтому я ожидаю, что оба будут работать.
Вы должны использовать docker image prune --filter "dangling=true"
, Так должно быть image
вместо images
,
Также обратите внимание, что в случае удаления оборванных изображений вам не нужно указывать фильтр, так как по умолчанию команда prune удаляет оборванные изображения:
Удалите все висящие изображения. Если указан параметр -a, также будут удалены все изображения, на которые не ссылается ни один контейнер.