| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
- server engineer
- java #추상클래스
- tibero 7.23
- 올 겨울은 조금 따뜻할 것 같다.
- server developer
- level3
- 정보처리기사 실기 #정처기 실기 #2024년 2회 #정처기 2024년 2회 #공부법 # 꿀팁
- 반복문
- 25304번
- 백엔드 개발자 로드맵
- java #예외처리 #throw #throws
- 2798블랙잭
- 넥슨개발자컨퍼런스
- 나는야 4학년 #5학년 까지 가보자구
- Spring
- ndc2025
- 이분탐색
- 브루트 포스법
- 2026 하반기 대기업 반드시 갑니다
- heap area #stack area #static area #jvm
- 자바 #자바문법 #자바기초 #참조형 #기본형
- 서버 개발자
- level2
- Next.js
- object 클래스 # java
- software enginner
- 주니어 백엔드 개발자
- tmax tibero
- 서버 엔지니어
- static #자바 메모리 구조 #멤버 변수
- Today
- Total
개발자 쿠키
[k8s] Nginx로 pod 띄우기 본문
Manifest File
쿠버네티스에서 다양한 리소스(파드, 서비스, 볼륨 등)를 생성하고 관리하기 위해 사용하는 파일
kubectl apply -f nginx-pod.yml 실행 -> 클러스터에 생성
Dockerfile
컨테이너 이미지(→ Docker image)를 어떻게 만들지 단계별로 명시한 텍스트 스크립트
파드를 생성할 때, CLI를 활용하는 방법과 yaml 파일을 활용하는 방법이 있다.
1. yaml 파일 생성하기

공식문서에 pod를 생성할 때는 v1이라고 기재한다고, 나와있다.
metadata.name : pod에 이름 붙이는 기능이다.
containers.name : 생성할 컨테이너의 이름
containers.image : 컨테이너를 생성할 때 사용할 docker image
spec.containers.ports.containerPort : 해당 컨테이너가 어떤 포트를 사용하는지 명시 (문서화 용)
2. yaml 파일을 기반으로 파드 생성 및 확인
kubectl apply -f nginx-pod.yaml
kubectl get pods

NAME : Pod의 이름
READY : 파드 내 준비 완료된 컨테이너의 개수 / 파드 내 총 컨테이너 수
STATUS : 파드의 상태
RESTARTS : 해당 파드의 컨테이너가 재시작된 횟수
AGE : 파드가 생성되어 실행된 시간
3. Nginx 정상 접속 확인
localhost:80
접속 실패

도커는 컨테이너 내부와 컨테이너 외부의 네트워크가 서로 독립적으로 분리되어있다.
쿠버네티스는 파드 내부의 네트워크를 컨테이너가 공유해서 같이 사용한다.
파드의 네트워크는 로컬 컴퓨터의 네트워크와는 독립적으로 분리되어있다. 이 때문에 파드로 띄운 Nginx에 아무리 요청을 보내도 응답이 없다.
Nginx가 띄우는 웹 페이지에 접근하려면
1. 파드 내부로 들어가서 접근
2. 파드의 내부 네트워크를 외부에서도 접속할 수 있도록 포트 포워딩 (포트 연결)
4. 파드 내부로 들어가서 Nginx 요청 보내기
kubectl exec -it nginx-pod -- /bin/bash
쿠버네티스에서는 파드 내부의 네트워크를 컨테이너가 공유해서 같이 사용하기 때문에 파드로 접속해서 Nginx로 요청을 보냈을 때 정상적으로 응답이 날라왔다.

5. 포트 포워딩을 활용해 Nginx로 요청 보내기

# kubectl post-foward pod/[파드명] [로컬에서의 포트]/[파드에서의 포트]
kubctl port-forward pod/nginx-pod 80:80 # mac은 sudo 추가
# 요청 보내기
curl localhost:80


6. 파드 삭제
# kubectl delete pod [파드명]
kubectl detlete pod nginx-pod
kubectl get pods'k8s' 카테고리의 다른 글
| [인프런] 비전공자도 이해할 수 있는 쿠버네티스 입문/실전 - 박재성 수강 후기 (0) | 2026.06.11 |
|---|---|
| [CI/CD] Github Actions, Jenkins, ArgoCD로 CICD 파이프라인 구축 (8) | 2025.08.18 |
| [k8s] Next.js를 pod로 띄우기 (0) | 2025.06.08 |
| [k8s] SpringBoot 서버를 pod로 띄우기 (3) | 2025.06.08 |
| [k8s] window에서 Kubernetes 설치하기 (docker desktop) (1) | 2025.06.07 |