Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker K8S未能从本地回购中提取映像_Docker_Kubernetes - Fatal编程技术网

Docker K8S未能从本地回购中提取映像

Docker K8S未能从本地回购中提取映像,docker,kubernetes,Docker,Kubernetes,我的docker存储库中有一个映像。我试图用它创建POD,但K8S给出了以下错误 未能拉取映像“cloudanswer:latest”:rpc错误:code=Unknown desc=Get:net/http:request在等待连接时被取消(等待标头时超出Client.Timeout) K8S似乎正在连接到而不是从本地docker存储库获取 如何使K8S为本地docker repo拍摄图像?imagePullPolicy应设置为IfNotPresent以从本地docker repo提取图像Ku

我的docker存储库中有一个映像。我试图用它创建POD,但K8S给出了以下错误

未能拉取映像“cloudanswer:latest”:rpc错误:code=Unknown desc=Get:net/http:request在等待连接时被取消(等待标头时超出Client.Timeout)

K8S似乎正在连接到而不是从本地docker存储库获取


如何使K8S为本地docker repo拍摄图像?

imagePullPolicy应设置为IfNotPresent以从本地docker repo提取图像

Kubernetes支持一种特殊类型的秘密,您可以创建该秘密,用于为您的POD获取图像

如果在集群中使用单节点,请确保此docker映像在此节点上可用。 你可以通过

docker image ls
同时将
imagePullPolicy
设置为
Never
,否则Kubernetes将尝试下载图像

多节点集群,您可以使用docker。 使用本地注册表:

docker run -d -p 5000:5000 --restart=always --name registry registry:2
docker push <dns-name-of-machine>:5000/ubuntu
现在正确标记您的图像:

docker tag ubuntu <dns-name-of-machine>:5000/ubuntu
docker标签ubuntu:5000/ubuntu
运行注册表容器的计算机的dns名称应可由网络中的所有节点访问

现在将图像推送到本地注册表:

docker run -d -p 5000:5000 --restart=always --name registry registry:2
docker push <dns-name-of-machine>:5000/ubuntu
docker推送:5000/ubuntu
您应该能够将其拉回:

docker pull <dns-name-of-machine>:5000/ubuntu
docker pull:5000/ubuntu

现在将yaml文件更改为使用本地注册表。

本地docker存储库是什么意思?如果您有一个私有注册表,您需要指定完整的图像名称(带有注册表),您可以运行docker登录吗?