kubernetes - 每次容器重启时,如何让 Kubernetes 进行一次镜像拉取?
问题描述
Kubernetes 似乎只在创建 pod 时拉取镜像,如何让它在容器本身退出时重新拉取最新的镜像?
我想要与 相同的效果kubectl rollout restart deployment
,但是当容器退出时。例如,如果容器是一个 shell 脚本,并且它确实如此exit 1
,Kubernetes 应该在重新启动之前从注册表中提取最新的图像。
如果这很重要,我的部署只有 1 个容器。
解决方案
你可以使用,在这里imagePullPolicy
阅读更多。
以下是供您参考的示例:
apiVersion: v1
kind: Pod
metadata:
name: pod-nginx-container-image-repull
spec:
containers:
- name: nginx-alpine-container-1
image: nginx:alpine
ports:
- containerPort: 80
imagePullPolicy: Always
更新 1:
当你使用restartPolicy: Never
then 这意味着你告诉 Kubernetes 我不希望我的容器在它崩溃时重新启动。因此,您会遇到在容器“重新启动”的情况下没有图像重新拉取,因为实际上没有容器重新启动。
我已经从我的工作区快速复制了一个示例,因此您restartPolicy: Never
在我的示例中看到了不适合您的示例,我更新了上面的示例以将其删除。但我希望你已经理解了它的另一个概念。
另一个值得注意的是,它restartPolicy
适用于 Pod 中的所有容器,同时imagePullPolicy
可以在 Pod 中的容器级别设置。
推荐阅读
- javascript - 如何使用 jQuery data() 访问对象数组中的所有对象
- html - 我无法在引导弹出窗口中放置表单和/或按钮。为什么这是不可能的?
- python - 数据预处理:keras 层 vs tf.image.resize
- sql - 使用 bigrquery 的“query_exec”和“bq_table_download”之间的差异
- sql-server - SQL Server QUOTENAME 命令的替代品,没有 128 个字符的限制。如何在括号之间放置一个字符串
- openlayers - 使用 OpenLayers 放大单个点簇
- vue.js - Vue 3 的 Monaco Editor Web Worker 问题
- typescript - 如何将 TypeScript 可变元组类型用于笛卡尔积函数?
- excel - 使用 VBA 循环遍历 Excel 中的精确工作表列表
- excel - 在 Excel 报告中分析不适用于最终用户