Tengo el siguiente controlador de replicación en Kubernetes en GKE:
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
Ahora si digo
kubectl rolling-update myapp --image=us.gcr.io/project-107012/myapp:5c3dda6b
la actualización continua se realiza, pero no se vuelve a tirar. ¿Por qué?
latest
, no lo hagas. Latest extraerá, bueno, la imagen más reciente con la última etiqueta. Lo que quieres es una gama SemVer. ~ 1.2.3 por ejemplo. esto extraerá imágenes con etiquetas entre el rango de> = 1.2.3 y <1.3.0. Siempre y cuando el proveedor de la imagen siga SemVer, usted sabe (y esta es la parte importante) que no se agregaron cambios atrasados (a propósito) y que no se agregaron nuevas características (posible preocupación de seguridad). Por favor, nunca lo use latest
en sistemas de producción.
imagePullPolicy
campo.