작성
·
1.1K
0
안녕하세요 강의 정말 잘 듣고 있는 수강생입니다. 좋은 컨텐츠의 강의 제공해주셔서 감사합니다.
질문이 있는데요. My-Third-Project에서 jenkins war 빌드 후 로컬 tomcat에 배포하는 부분에서 젠킨스 item 설정에 빌드 후 조치에서 궁금한 점이 있었습니다.
deploy war/ear to container 설정에서 Tomcat URL 설정하는 부분에서 mac os의 ifconfig로 확인해보니 172.x.x.x:8088로 나왔습니다.
이게 사실 와이파이 내부의 private ip라고 이해했고 처음에는 와이파이 외부 공인 ip주소를 입력해서 설정했었는데요. 그렇게 하니까 Connection refused 나오면서 배포 실패가 나오더라구요.
172.x.x.x 로 지정해서 빌드해보니 배포 성공이 나오긴했었는데요. 로컬에서 실행한 docker 컨테이너 내의 jenkins 서버에서 로컬의 tomcat 서버 주소를 와이파이의 private ip로 설정하는 이유가 무엇인지 궁금했습니다.
답변 1
1
안녕하세요, 이도원입니다.
실습하신 환경을 요약하면 Jenkins 서버는 도커로 기동하고, Tomcat 서버는 MacOS에 직접 설치하여 기동 중이라고 하고 답변드리겠습니다.
Tomcat서버를 로컬에서 직접(MacOS) 기동하시건, 도커 컨테이너로 기동하시건 상관없이, 로컬의 웹 브라우저에서 접속되는 IP address이어야 합니다. 다만, localhost 로 접속하였을 때도, 웹 브라우저에서는 연결이 되더라도, Jenkins 서버에서 localhost로 연결 할 경우에는 Tomcat서버가 설치된 PC(또는 VM)을 가리키는 것이 아니라, Jenkins 서버 자신이 됩니다. 따라서, Jenkins 서버에 Tomcat 서버가 설치되어 있지 않는 이상 접속 오류가 발생하게 될 겁니다. 따라서, Jenkins 서버에서도 Tomcat 서버에 접속하기 위해 해당 PC의 IP Address를 사용하시는 것이 좋습니다. MacOS에서 ifconfig 명령어로 IP address를 확인하셨다면, 웹 브라우저에서 해당 IP:8080으로 접속이 되었다면, Jenkins서버에서도 접속이 되셨을것 같습니다.
추가 질문사항 있으시면 글 남겨 주세요.
감사합니다.