- 기존에 띄워놓은 네임스페이스 (pod, deployment, service ...) 삭제하기
- kubectl delete all --all : 기존의 모든 네임스페이스를 삭제한다.
- kubectl delete all --all : 기존의 모든 네임스페이스를 삭제한다.
- 디플로이먼트, 서비스를 활용해 백엔드(Nest.js) 서버 띄워보기
- 요구사항
- 디플로이먼트 : Pod 를 4개 띄운다
- 서비스 : localhost:31000 에서도 통신할 수 있도록 한다.
- 프로젝트 실행시켜보기
- npm 설치하기 : npm i
- npm 실행하기 : npm run start
- 접속하기
- 디플로이먼트, 서비스를 활용해 백엔드(Nest.js) 서버 띄우기
- Dockerfile 생성하기
FROM node WORKDIR /app COPY . . RUN npm install RUN npm run build EXPOSE 3000 ENTRYPOINT [ "node", "dist/main.js" ]
- 이미지로 활용하기 위해 도커파일을 생성한다.
- .dockerignore 생성하기
node_modules
- Docker 빌드 시 포함하지 않을 파일 및 디렉터리를 지정하는 파일
- docker image 생성하기
- nest-Deployment .yaml 파일 생성하기
apiVersion : apps/v1 kind : Deployment metadata: name: nest-deployment spec: replicas : 4 selector : matchLabels: app: backend-app # 배포할 pod의 정보를 작성한다. template: metadata: labels: app: backend-app # pod 의 스펙을 정의한다. spec: containers: - name : nest-container image: nest-server:1.0 imagePullPolicy: IfNotPresent ports: - containerPort: 3000
- nest-service.yaml 파일 생성하기
apiVersion: v1 kind: service metadata: name: nest-service spec: # 외부에서 접속을 할수 있도록 만들어주는 타입 type : Nodeport selector : app: backend-app ports: # 외부에서 사용자가 접근하게 되는 포트번호와 프로토콜을 의미한다. - protocol: TCP Nodeport: 31000 # 쿠버네티스 내부에서 외부로 접속하기 위한 포트 번호. port : 3000 targetPort: 3000
- deployment & service 생성하기
- deployment 생성하기
- service 생성하기
- localhost 31000 포트로 외부 사용자가 접근 시, pod 의 3000 번 포트와 연결한다.
- deployment 생성하기
- Dockerfile 생성하기
- 요구사항
- 업데이트 진행하기
- src/app.service.ts 내용 수정하기
- return hello world'; → return 'Rusharp\'s server';
- nest-deployment.yaml 파일 수정하기
- spec/template/spec/containers/image 를 `nest-server:1.1` 로 변경
- docker image build (1.1 버전으로)
- deployement 파일을 어플라이로 실행시키기
- localhost:31000 으로 접속하기
- src/app.service.ts 내용 수정하기
'쿠버네티스 > cka' 카테고리의 다른 글
Pod, deployment, service 개념 정리 (0) | 2025.03.06 |
---|---|
Deployement, service를 활용하여 서버 띄워보기 명령어 정리! (0) | 2025.03.06 |
VS code 에서 새로운 버전의 서버로 업데이트 시키기 (0) | 2025.03.05 |
서버가 죽었을 때 자동으로 복구하는 기능 (Self-Healing) (0) | 2025.03.04 |
디플로이먼트를 활용한 서버 개수 조절 방법 (0) | 2025.03.03 |