首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带有Minikube的ImagePullBackOff本地存储库

带有Minikube的ImagePullBackOff本地存储库
EN

Stack Overflow用户
提问于 2016-08-16 15:45:49
回答 12查看 50.2K关注 0票数 46

我试着用迷你和小猫在我的本地机器上测试kubernetes。但是,kubernetes未能在我的本地存储库(ImagePullBackOff)中提取映像。

我试着用以下方法来解决这个问题:使用Minikube时无法从私人回购中提取停靠者图像

但是我没有/etc/init.d/docker,我想是因为运动学?(我在OS X上)

编辑:

我安装了https://github.com/docker/docker-registry,而且

代码语言:javascript
运行
复制
docker tag local-image-build localhost:5000/local-image-build

docker push localhost:5000/local-image-build

我的kubernetes yaml包含:

代码语言:javascript
运行
复制
spec:
  containers:
  - name: backend-nginx
    image: localhost:5000/local-image-build:latest
    imagePullPolicy: Always

但还是不起作用..。日志:

代码语言:javascript
运行
复制
Error syncing pod, skipping: failed to "StartContainer" 
for "backend-nginx" with ErrImagePull: "Error while pulling image: 
Get http://127.0.0.1:5000/v1/repositories/local-image-build/images: 
dial tcp 127.0.0.1:5000: getsockopt: connection refused

编辑2 :

我不知道我是否走上了好路,但我发现:

http://kubernetes.io/docs/user-guide/images/

但我不知道我的DOCKER_USER是什么..。

代码语言:javascript
运行
复制
kubectl create secret docker-registry myregistrykey --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL

编辑3

现在我上了吊舱:

代码语言:javascript
运行
复制
Failed to pull image "local-image-build:latest": Error: image library/local-image-build not found
Error syncing pod, skipping: failed to "StartContainer" for "backend-nginx" with ErrImagePull: "Error: image library/local-image-build not found"

帮帮我我快疯了。

编辑4

代码语言:javascript
运行
复制
Error syncing pod, skipping: failed to "StartContainer" for "backend-nginx" with ErrImagePull: "Error response from daemon: Get https://192.168.99.101:5000/v1/_ping: tls: oversized record received with length 20527"

我补充说:

代码语言:javascript
运行
复制
EXTRA_ARGS='
    --label provider=virtualbox
    --insecure-registry=192.168.99.101:5000

到我的码头配置,但仍然不工作,同样的信息.

顺便说一句,我改变了我的yaml:

代码语言:javascript
运行
复制
 spec:
      containers:
      - name: backend-nginx
        image: 192.168.99.101:5000/local-image-build:latest
        imagePullPolicy: Always

我就这样运行我的注册表:

代码语言:javascript
运行
复制
docker run -d -p 5000:5000 --restart=always --name myregistry registry:2
EN

回答 12

Stack Overflow用户

回答已采纳

发布于 2016-09-05 13:14:43

我想我解决了

代码语言:javascript
运行
复制
minikube start --vm-driver="virtualbox" --insecure-registry="$REG_IP":80

而不是仅仅

代码语言:javascript
运行
复制
minikube start

$REG_IP是:

代码语言:javascript
运行
复制
REG_IP=docker-machine ip registry

来源

票数 15
EN

Stack Overflow用户

发布于 2018-03-25 17:41:58

使用小型码头注册中心,而不是本地码头。

https://kubernetes.io/docs/tutorials/stateless-application/hello-minikube/#create-a-docker-container-image

将码头设置为指向小型码头

eval $(minikube docker-env)

推进到小型码头

docker build -t hello-node:v1 .

将部署设置为不拉IfNotPresent

K8S默认设置为“始终”更改为"IfNotPresent“

imagePullPolicy: IfNotPresent

相关问题

票数 42
EN

Stack Overflow用户

发布于 2020-08-16 18:36:43

如果使用--vm-driver=none,则需要将imagePullPolicy设置为Never

imagePullPolicy:从不:假定图像是本地存在的。没有试图拉出图像。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38979231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档