k8s 镜像拉取策略

Always: 每次创建 Pod 时都会从仓库下载镜像

bash 复制代码
imagePullPolicy: Always

**IfNotPresent:**如果本地已经存在该镜像,则使用本地;如果不存在则会去远程仓库拉取

bash 复制代码
imagePullPolicy: IfNotPresent

Never: 始终只依赖本地存在的镜像,绝不会尝试连接到任何外部仓库进行拉取操作

bash 复制代码
imagePullPolicy: Never
bash 复制代码
实际案例展示
下面是一个简单的例子展示了怎样设置不同的镜像拉取策略:

Yaml
apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
spec:
  containers:
    - name: nginx-container
      image: nginx:latest
      imagePullPolicy: Always # 这里可以替换为 IfNotPresent 或 Never
当设置了 imagePullPolicy: Always 的时候,即使节点上有相同标签 (tag) 的旧版镜像也会被覆盖掉以获得最新的可用版本。这对于开发环境特别有用,在那里频繁迭代应用程序是很常见的事情。

而生产环境中通常建议采用更为保守的方式比如 IfNotPresent, 因为这样可以在一定程度上减少不必要的网络流量消耗以及加速Pod初始化速度。

需要注意的是,当指定了 Never 方式时一定要确认目标机器确实拥有对应的 Docker 镜像文件,否则 Pod 将无法成功调度执行。
相关推荐
AI小小怪4 小时前
在Linux服务器上安装CVAT (Docker 28.5.1)
运维·docker·容器·数据标注·cvat
小坏讲微服务6 小时前
Docker-compose 搭建Maven私服部署
java·spring boot·后端·docker·微服务·容器·maven
!chen6 小时前
k8s-Pod中的网络通信
网络·docker·kubernetes
奥尔特星云大使8 小时前
《系统规划与管理师教程(第2版)》方法篇 第10章 云原生系统规划 知识点总结
云原生·软考·高级·系规
熙客10 小时前
Kubernetes是如何保证有状态应用数据安全和快速恢复的
mysql·云原生·容器·kubernetes
Wang's Blog11 小时前
Nestjs框架: 微服务项目工程结构优化与构建方案
微服务·云原生·架构·nestjs
似水流年 光阴已逝12 小时前
Kubernetes Pod 基本原理:全面详解
云原生·容器·kubernetes·pod
PKNLP12 小时前
07.docker介绍与常用命令
运维·docker·容器
阿里云云原生12 小时前
评估工程正成为下一轮 Agent 演进的重点
云原生
掘根14 小时前
【Docker】网络
网络·docker·容器