GKEのKubernetesに次のレプリケーションコントローラがあります。
apiVersion: v1
kind: ReplicationController
metadata:
name: myapp
labels:
app: myapp
spec:
replicas: 2
selector:
app: myapp
deployment: initial
template:
metadata:
labels:
app: myapp
deployment: initial
spec:
containers:
- name: myapp
image: myregistry.com/myapp:5c3dda6b
ports:
- containerPort: 80
imagePullPolicy: Always
imagePullSecrets:
- name: myregistry.com-registry-key
今、私が言うなら
kubectl rolling-update myapp --image=us.gcr.io/project-107012/myapp:5c3dda6b
ローリング更新は実行されますが、再プルは行われません。どうして?
latest
、行わないでください。最新は、最新のタグで画像を取得します。必要なのはSemVerの範囲です。たとえば、1.2.3です。これにより、> = 1.2.3から<1.3.0の範囲のタグが付いたイメージがプルされます。イメージベンダーがSemVerを知っている限り(そしてこれは重要な部分です)、後方互換性のある変更は(意図的に)追加されておらず、新しい機能は追加されていません(セキュリティ上の懸念)。latest
生産システムでは絶対に使用しないでください。
imagePullPolicy
フィールドには意味がありません。