是否有一种方法可以在Kubernetes的部署清单文件中指定Docker映像的tar文件?节点可以访问将包含tar文件的已安装网络驱动器。有一篇文章在每个节点上由docker加载了映像,但是我想知道是否有一种方法可以仅指定tar文件并让Kubernetes进行加载和运行。
-编辑-
更确切地说,假设我在每个节点上都有一个已安装的网络驱动器,是否有一种方法是仅使用清单文件来指示kubernetes直接从tar文件加载该映像,而不必将其放入docker注册表中。
答案 0 :(得分:0)
您提供的有关环境及其外观的信息非常有限。
我想到两件事。
wget
或类似工具下载此文件。初始化容器与常规容器完全一样,除了:
这样,您可以确定在启动应用程序之前,将下载tar文件。可以找到示例here
在您的deployment
,statefulset
,pod
(不确定您使用的是什么)中,您可以Mount Volume进入广告连播。之后,您将可以在pod内指定音量的路径。请记住,您必须使用正确的access modes
。
要运行.tar
文件,您可以使用一些this documentation中的bash命令。
答案 1 :(得分:0)
通常,不能,Kubernetes只能从注册表而不是从网络驱动器访问容器映像,请参见documentation。
但是,您可以在群集中拥有一个私有注册表(请参见docs)。您还可以在节点上本地放置图像(预拉图像),并通过将imagePullPolicy
设置为Never
(请参见docs)来让Kubernetes从那里访问它们。