【发布时间】:2020-07-15 10:01:52
【问题描述】:
我尝试使用 Kubernetes API 通过容器镜像中的注释来读取元数据。元数据适用于相关图像的每个实例,并且是正确运行任何生成的容器所必需的。遵循此 SO question 无法直接从 kubernetes API 读取 Docker 映像标签。
我的下一个想法是使用添加到图像清单的自定义注释,尽管对于这样一个“简单”的任务来说,这似乎是一个非常老套的解决方案。无论如何,如果我使用 docker 将注释添加到清单中,我看不到从 Kubernetes API 读取它们的方法。
我认为我在这里完全错误。这似乎是一个相当简单的任务,其他人可能已经实施了......无论如何我找不到任何关于此的进一步信息。在部署镜像容器之前通过 Kubernetes 读取镜像元数据真的那么难吗?
提前感谢您的帮助!
编辑:
我问的原因是因为我想授予特定图像的容器访问不同主机系统上特定串行 USB 设备(例如 FTDI232)的权限。由于我不知道将哪个路径(例如 /dev/ttyUSB0)分配给 USB 设备,所以我编写了一个监控 USB 设备的程序,如果插入或插入了适当的设备,则创建容器并将其传递给相应的路径。从容器内部,我想通过静态、不变的路径(例如 /dev/FTDI232)访问串行设备
【问题讨论】:
-
你能多说一点你想做的事吗?如果元数据是图像的一部分,为什么不能将其作为环境变量或配置文件包含在图像中?
-
@DavidMaze 看看我的编辑
-
您的编辑表明真正的问题与最初的问题所建议的完全不同。您能否确认您真正想要的是访问例如/dev/ttyUSB0 来自具有静态路径的容器(在 k8s 中)?所以容器看到的是/dev/FTDI232,但实际上它访问的是/dev/ttyUSB0。请确认这是否正确。
-
是的,这是正确的。我想使用图像上的元数据来告诉我的程序对相关图像感兴趣的串行设备以及图像期望的确切路径。
-
它必须是图像上的元数据吗?您会接受不使用元数据但仍能解决您的问题的答案吗?
标签: kubernetes