Deployment.yaml

로로·2023년 11월 5일
0

디플로이먼트(Deployment)

쿠버네티스에서 상태가 없는(stateless) 앱을 배포할 때 사용하는 가장 기본적인 컨트롤러
파드와 레플리카셋에 대한 업데이트를 선언하는 영역

# 기본 항목
apiVersion: apps/v1        # API 버전, 존재하지 않는 값을 설정하면 오류가 발생
kind: Deployment           # 쿠버네티스 리소스의 종류 Deployment, Service 등
metadata:
  name: {{PN}}-deployment  # Deployment 이름
 #namespace: {{NS}}        # 어느 Namespace에 띄울지
  labels:                  # 검색할 때 유용하게 쓰이는 key-value
    app: {{PN}}-pod

spec:
  replicas: 1              # 클러스터 안에서 가동시킬 파드의 수
  selector:                # 어떤 파드를 가동시킬지에 대한 셀렉터,
    matchLabels:           # 파드의 Template에 설정된 라벨과 일치해야 한다.
      app: {{PN}}-pod
      
  # Pod 정보
  template:                # 실제로 클러스터 안에서 움직이는 파드의 수가 replicas에 설정된 
    metadata:              # 파드의 수를 만족시키지 않을 때, 새로 작성되는 파드의 템플릿
      labels:              # 템플릿의 이름이나 Label과 같은 데이터
        app: {{PN}}-pod
    spec:                  # 파드의 상세 정보를 설정
      containers:
        - name: {{PN}}
          image: {{REPO}}/{{PN}}:{{VERS}}
          ports:
            - containerPort: {{PORT}}

참고 : https://velog.io/@tastestar/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-yaml
yaml문법 참고 : https://subicura.com/k8s/prepare/yaml.html#%E1%84%80%E1%85%B5%E1%84%87%E1%85%A9%E1%86%AB%E1%84%86%E1%85%AE%E1%86%AB%E1%84%87%E1%85%A5%E1%86%B8

profile
청로하~🏝️

0개의 댓글

관련 채용 정보