2017-11-03 8 views
-1

이미지를 업데이트 할 때마다 CI를 사용하여 내 kubernetes 클러스터를 업데이트하고 있습니다. 이미지가 푸시되고 최신 태그가있을 때마다 kubectl은 기존 배치를 적용하지만 아무 것도 업데이트되지 않습니다.Kubectl apply가 창이나 배포를 업데이트하지 않습니다.

이는 롤링 배포가 실행됩니다 것을 실행한다 적용 할 때 내 목표는 $ kubectl apply --record --filename /tmp/deployment.yaml

실행하는 것입니다.

apiVersion: extensions/v1beta1 
kind: Deployment 
metadata: 
    name: api 
spec: 
    replicas: 1 
    template: 
    metadata: 
     labels: 
     app: api 
    spec: 
     containers: 
     - name: api 
     image: us.gcr.io/joule-eed41/api:latest 
     imagePullPolicy: Always 
     ports: 
      - containerPort: 1337 
     args: 
      - /bin/sh 
      - -c 
      - echo running api;npm start 
     env:   
     - name: NAMESPACE 
      valueFrom: 
      configMapKeyRef: 
       name: config 
       key: NAMESPACE 
+1

YAML 파일의 내용은 무엇입니까? – kichik

+0

@kichik은 yaml –

+1

을 추가했습니다. k8s는 태그 된 실제 이미지가 변경되었음을 알지 못합니다. 2 가지 해결책이 있습니다. 1) 기존 포드를 제거한 다음 새 버전을 가져옵니다. 2) 매번 새 버전을 사용하십시오. – uthark

답변

0

다른 제안 사항처럼 특정 태그가 있어야합니다. 이

kubectl 세트 이미지 배포/deployment_name의 deployment_name는 = 여기서 image_name 다음 명령을 사용하여 새 이미지를 설정합니다 IMAGE_TAG

귀하의 경우가 될 것이다

kubectl 설정 이미지 배포/API API = us.gcr.io/joule-eed41/api : 0.1