인프런 커뮤니티 질문&답변

m22h님의 프로필 이미지
m22h

작성한 질문수

데브옵스(DevOps)를 위한 쿠버네티스 마스터

포드 연습문제 풀어보기

containerPort 에 대해 질문있습니다.

작성

·

444

1

도커 실습때도 궁금했던 건데요,

Q1. 컨테이터포트는 이미지에 따라 이미 정해져 있는것으로 보이는데 맞나요? 젠킨스는 8080으로 정해져 있는거죠?

Q2. 그렇다면 이미 정해져 있는 포트 번호를 왜 굳이 매니페스트에 명기 하는 건가요?

궁금해서 containerPort를 9000으로 주고 해봤는데, 젠킨스 내에서 여전히 8080만 유효했습니다. 아무런 변화도 줄수 없는 값을 왜 명기해야 하나요?

꼭 알려주셨으면 좋겠습니다.

감사합니다.

답변 1

1

안녕하세요 강사 최일선입니다.

Q1. 컨테이터포트는 이미지에 따라 이미 정해져 있는것으로 보이는데 맞나요? 젠킨스는 8080으로 정해져 있는거죠?

네 맞습니다.

Q2. 그렇다면 이미 정해져 있는 포트 번호를 왜 굳이 매니페스트에 명기 하는 건가요?

관리 목적이라고 볼 수 있겠습니다.

1. 운영에서 디버깅을 위한 목적: 이런 경우에는 컨테이너를 직접 개발하지 않았기 때문에 명시적으로 yaml에 작성해 둔다면 디버깅에 도움이 됩니다. (팀이나 후에 자신이 참조할 정보로 봐도 되겠네요)

2. 그리고 뒤에 나올 단일 포드에 멀티 컨테이너를 배치할 때 발생할 수 있는 문제를 방지하려고 하는 듯합니다. 두 컨테이너를 한 pod에 작성할 때 충돌이 있을 만한 포트를 바인딩하지는 않을 겁니다.

3. 검색해보니 저와 비슷한 결론을 내더군요 참고해보시면 좋을 듯 합니다.

https://stackoverflow.com/questions/57197095/why-do-we-need-a-port-containerport-in-a-kuberntes-deployment-container-definiti

좋은 질문 감사합니다

m22h님의 프로필 이미지
m22h

작성한 질문수

질문하기