첫번째 방법

example-depl.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: example-depl
spec:
  replicas: 1
  selector:
    matchLabels:
      app: example
  template:
    metadata:
      labels:
        app: example
    spec:
      containers:
        - name: example
          image: [docker hub id]/example:0.0.1

1. 코드 변경

2. 도커 컨테이너 이미지 다시 build, 새 이미지 버전으로 바꾸기

docker build -t [docker hub id]/example:0.0.2 .

3. example-depl.yaml 파일 변경

apiVersion: apps/v1
kind: Deployment
metadata:
  name: example-depl
spec:
  replicas: 1
  selector:
    matchLabels:
      app: example
  template:
    metadata:
      labels:
        app: example
    spec:
      containers:
        - name: example
          image: [docker hub id]/example:0.0.2

4. 명령어 실행

kubectl apply -f [deployment file name]

두번째 방법 (추천!!!)

1. 도커 이미지 버전 정보 변경

example-depl.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: example-depl
spec:
  replicas: 1
  selector:
    matchLabels:
      app: example
  template:
    metadata:
      labels:
        app: example
    spec:
      containers:
        - name: example
          image: [docker hub id]/example (or [docker hub id]/example:latest)

2. 코드 변경

3. 도커 컨테이너 이미지 다시 build

docker build -t [docker hub id]/example .

4. 도커 허브에 이미지 push

docker push [docker hub id]/example

주의사항!!

docker push denied requested access to the resource is denied

1) 에러가 발생하면 docker login 으로 도커 허브에 로그인 되어 있는지 확인

2) [docker hub id] 에서 도커 허브 아이디와 동일한지 확인

5. 명령어 실행

kubectl rollout restart deployment [deployment name]

pods와 deployment 상태 확인

kubectl get deployments
kubectl get pods

'Docker, Kubernetes' 카테고리의 다른 글

쿠버네티스 기본 명령어  (0) 2021.02.23
Docker 기본 명령어  (0) 2021.02.23
Commit Message 규칙  (0) 2020.12.27
CI 지속적 통합  (0) 2020.12.27
브랜치 전략 패턴 git-flow, github-flow  (0) 2020.12.26

+ Recent posts