首页 > 解决方案 > 如何使用 Minikube 设置 imagePullPolicy

问题描述

我是 Kubernetes 新手。我正在尝试按照本教程指导我如何使用 minikube 设置本地服务。我能够使用$ kubectl run hello-minikube --image=k8s.gcr.io/echoserver:1.10 --port=8080本教程中的服务运行一些东西。嘘!

现在我想运行一个带有本地标记和构建的Docker 映像的服务器。根据这篇文章,我需要做的就是告诉我的计算机使用 minikube docker 守护进程,构建我的映像,并将其设置imagePullPolicy为从不。

如何以及在哪里设置imagePullPolicywith minikube?我搜索了一下,虽然有很多结果,但我在 K8 中的“树林里的宝贝”状态导致信息超载。(即你的答案越简单越好)

标签: kubernetesminikube

解决方案


您必须编辑您的部署kubectl run创建部署)。规范看起来像这样:

spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 2
  selector:
    matchLabels:
      run: hello-minikube
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      creationTimestamp: null
      labels:
        run: hello-minikube
    spec:
      containers:
      - image: k8s.gcr.io/echoserver:1.10 <-- change to the right image
        imagePullPolicy: IfNotPresent <-- change to Always
        name: hello-minikube
        ports:
        - containerPort: 8080
          protocol: TCP
        resources: {}
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      terminationGracePeriodSeconds: 30

编辑:

$ kubectl edit deployment hello-minikube

推荐阅读