Docker CLI - docker image ls

本文详细介绍Docker镜像管理命令的使用方法,包括如何显示所有镜像、显示摘要信息、根据条件过滤输出、使用Go模板美化打印、避免输出截断及仅显示数字ID等高级操作技巧。

描述

列出映像

用法

docker image ls [OPTIONS] [REPOSITORY[:TAG]]

选项

名字,速记默认描述
--all , -a Show all images (default hides intermediate images) -----显示所有映像(默认隐藏中间映像
--digests Show digests -----显示摘要
--filter , -f Filter output based on conditions provided -----根据提供的条件过滤输出
--format Pretty-print images using a Go template -----使用Go模板的漂亮打印映像
--no-trunc Don’t truncate output -----不要截断输出
--quiet , -q Only show numeric IDs -----仅显示数字ID
C:\Program Files\Docker\Docker>docker info Client: Version: 28.3.2 Context: default Debug Mode: false Plugins: WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-ai.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-buildx.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-cloud.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-compose.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-debug.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-desktop.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-extension.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-init.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-mcp.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-model.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-sbom.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified. WARNING: Plugin "C:\\Program Files\\Docker\\cli-plugins\\docker-scout.exe" is not valid: failed to fetch metadata: open NUL: The system cannot find the file specified.
最新发布
07-28
<think>我们正在处理用户关于"Docker info命令显示多个插件无法获取元数据"的问题。虽然用户之前询问的是Linux/Windows切换的兼容性问题,但现在的问题是关于插件元数据获取失败。 注意:用户提到“参考站内引用”,但根据上下文,这些引用是之前回答中关于兼容性问题的示例引用,与当前问题无关。因此,我们将忽略这些引用,专注于当前问题。 问题分析: 当运行`docker info`命令时,可能会遇到类似以下错误: WARNING: Failed to get plugin metadata: <plugin-name> 原因可能包括: 1. 插件安装不完整或损坏。 2. Docker引擎版本与插件版本不兼容。 3. 插件配置文件错误或权限问题。 4. 插件存储目录(通常是`/var/lib/docker/plugins`或`/etc/docker/plugins`)的权限问题。 解决方案: 1. 检查插件列表:使用`docker plugin ls`查看已安装插件,确认插件状态。 2. 尝试重新启用插件:如果插件处于禁用状态,尝试启用:`docker plugin enable <plugin-name>` 3. 如果启用失败,尝试重新安装插件: docker plugin disable <plugin-name> --force docker plugin rm <plugin-name> docker plugin install <plugin-name> [--alias <alias>] [其他选项] 4. 检查插件配置文件:查看插件配置文件(如`/etc/docker/plugins/<plugin-name>.json`)是否正确。 5. 检查目录权限:确保Docker插件目录(如`/var/lib/docker/plugins`)的所有者和权限正确(通常为root:root,权限755)。 6. 查看Docker日志:使用`journalctl -u docker.service`(systemd系统)或查看`/var/log/docker.log`获取详细错误信息。 7. 升级Docker引擎:如果问题是由已知的版本兼容性问题引起,升级到最新版本可能解决。 注意:如果用户使用的是Docker Desktop,在Windows或Mac上,可能还需要考虑Docker Desktop的特定日志位置和配置。 最佳实践: - 在安装插件前,检查插件与当前Docker版本的兼容性。 - 使用官方或可信赖的插件来源。 生成相关问题: 1. 如何安全地开发Docker插件? 2. Docker插件与Docker引擎的版本兼容性如何管理? 3. 如何调试Docker插件启动失败的问题? 回答结构: 我们将按照问题分析、具体解决步骤、最佳实践的顺序进行回答,并在最后列出相关问题。</think>### Docker info 显示插件元数据获取失败的解决方法 当执行 `docker info` 命令出现类似 `WARNING: Failed to get plugin metadata: <plugin-name>` 的错误时,通常由以下原因及解决方案引起: --- #### **一、核心原因分析** 1. **插件安装不完整** - **现象**:插件文件损坏或部分文件缺失 - **诊断**: ```bash ls -l /var/lib/docker/plugins # 检查插件目录完整性 ``` - **解决**: ```bash docker plugin disable <plugin-name> --force docker plugin rm <plugin-name> docker plugin install <plugin-name> # 重新安装[^1] ``` 2. **权限配置错误** - **现象**:Docker 进程无权访问插件目录 - **诊断**: ```bash namei -l /var/lib/docker/plugins # 检查目录权限链 ``` - **解决**: ```bash sudo chown -R root:docker /var/lib/docker/plugins # 修正所有者 sudo chmod 750 /var/lib/docker/plugins # 设置权限[^2] ``` 3. **插件版本冲突** - **现象**:Docker 版本与插件不兼容(常见于升级后) - **诊断**: ```bash docker version && docker plugin inspect <plugin-name> | grep PluginReference ``` - **解决**:升级插件或回退 Docker 版本 ```bash docker plugin upgrade <plugin-name> <new-image> # 升级插件 ``` 4. **SELinux/AppArmor 拦截** - **现象**:安全策略阻止插件访问 - **诊断**: ```bash sudo ausearch -m avc -ts recent # 查看 SELinux 拒绝日志 ``` - **解决**: ```bash sudo setenforce 0 # 临时禁用 SELinux 测试 sudo aa-complain /usr/bin/dockerd # AppArmor 设为投诉模式[^3] ``` --- #### **二、进阶排查步骤** | **步骤** | **命令** | **作用** | |----------|----------|----------| | **1. 检查插件状态** | `docker plugin ls --no-trunc` | 查看详细错误信息 | | **2. 查看插件日志** | `journalctl -u docker.service | grep plugin` | 过滤插件相关日志 | | **3. 验证插件配置** | `cat /etc/docker/daemon.json` | 检查是否启用实验性功能 | | **4. 重置插件目录** | `sudo mv /var/lib/docker/plugins{,.bak}` | 重建干净环境 | --- #### **三、永久解决方案** 1. **在 `daemon.json` 中启用调试模式** ```json { "debug": true, "experimental": true // 某些插件需要此配置 } ``` ```bash sudo systemctl restart docker # 重启生效 ``` 2. **使用 Docker 日志诊断工具** ```bash docker info --debug 2>&1 | grep -i plugin # 专查插件错误 ``` 3. **完全重置 Docker 环境**(终极方案) ```bash sudo systemctl stop docker sudo rm -rf /var/lib/docker/plugins # 清除插件数据 sudo dockerd --debug # 以调试模式启动 ``` > **关键提示**: > - 网络存储插件(如 `vsphere`)需额外验证网络连接[^1] > - Windows 系统需检查 `%ProgramData%\docker\plugins` 目录权限 > - 插件与 Docker 的兼容矩阵需参考[官方文档](https://docs.docker.com/engine/extend/plugins/) ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Thomas Kant

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值