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 将无法成功调度执行。
相关推荐
杨了个杨89821 小时前
docker的网络模式
网络·docker·容器
spider_xcxc3 小时前
docker-compose.yaml 是“开发/测试环境”的利器,而 Kubernetes 配置是“生产环境”的标准。
docker·容器·kubernetes
chen_ke_hao4 小时前
K8s 高可用集群部署
java·docker·kubernetes
Geek-Chow5 小时前
Kubernetes HPA Behavior When Deployment Is Scaled to 0
云原生·容器·kubernetes
张忠琳15 小时前
【kubernetes】Node Feature Discovery 0.20.0-devel 源码深度解析 — 第四卷:CLI入口、工具链与全局架构总结
云原生·容器·架构·kubernetes·nvidia
Navicat中国15 小时前
开发者入门:无服务器数据库
数据库·云原生·serverless·navicat
nuo53420219 小时前
基础 6 —— Docker 容器数据卷
docker·容器
Sinclair19 小时前
安企CMS的安装-Docker 部署
运维·docker·容器
汪汪大队u20 小时前
【无标题】
运维·docker·kubernetes·prometheus
spider_xcxc1 天前
Docker Compose 容器通信详解:同一个 Compose 文件才能互通吗?
docker·容器·k8s·容器化·容器网络