helm create로 chart template을 생성하고, 의존성 chart를 추가해둔다.
완성된 k8s manifest files을 준비한다.
1.에서 변수화 할 수 있는 부분을 마킹한다.
변수화 할 수 있는 부분을 values.yaml에 작성하고, 변수화 된 부분을 template화 한다.
(+ helm hook이 필요한 부분이 있는지 생각해본다.)
NOTES.txt을 작성한다.
Chart.yaml에 Chart에 대한 metadata를 작성한다.
작성한 chart로 release 하여 동작확인한다.
helm 패키징하고 배포한다.
configmap.yml
apiVersion: v1
kind: ConfigMap
metadata:
name: app-env
data:
DEBUG: "False"
ALLOWED_HOSTS: "wrtn.lsh23.site,127.0.0.1"
DB_NAME: "wrtn_dev"
DB_USER: "sehyeong"
DB_PASSWORD: "sehyeong1!"
DB_HOST: "10.10.194.32"
DB_PORT: "3306"
service.yml
apiVersion: v1
kind: Service
metadata:
name: wrtn-django
labels:
app: wrtn
spec:
ports:
- name: web-port
port: 8080
targetPort: 8080
selector:
app: wrtn
tier: was
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: wrtn-django-ingress-route
spec:
entryPoints:
- websecure
routes:
- match: Host(`wrtn.lsh23.site`)
kind: Rule
services:
- name: wrtn-django
port: 8080
tls:
secretName: lsh23.site
deployment.yml