EC2에서 Jar 파일 실행을 성공했다.
그 후 웹 브라우저에서 테스트를 해보고자 했으나 실패.
이를 해결하는 과정을 기록해보고자 한다.
결론부터 말하면 보안 그룹-인바운드 규칙 편집하여 포트번호 8080 열어서 해결했습니다.
아래 둘 중 하나 사용하면 됩니다. 보통 퍼블릭 IPv4 DNS 사용합니다.
보안 그룹 설정-인바운드 규칙 편집-사용자 지정TCP/8080 포트/Anywhere-Ipv4 추가
보안 그룹 설정에서 8080 포트에 대한 인바운드 규칙이 허용되어 있는지 확인해야합니다.
HTTP의 기본 포트 번호는 80입니다. 따라서 일반적인 웹 브라우징이나 웹 서버로의 기본 HTTP 요청은 포트 80을 사용합니다. 그러나 특정한 상황에서는 포트를 변경하여 사용할 수 있습니다.
Spring Boot 애플리케이션의 경우, 내장 웹 서버가 기본적으로 8080 포트를 사용합니다.
따라서 Spring Boot 애플리케이션을 실행할 때는 보통 http://yourdomain.com:8080/ 와 같이 포트 번호를 명시하여 접속합니다.
EC2 인바운드 규칙에서 기본적으로 HTTP를 지원하는 포트는 80이지만, 여러분이 특정 포트(예: 8080)로 애플리케이션을 실행하고 있다면 해당 포트로 인바운드 규칙을 추가해야 합니다. 여러분이 수동으로 추가한 TCP/8080/anywhere IPv4 규칙이 올바르게 동작한다면, 해당 포트를 통해 애플리케이션에 접근할 수 있게 됩니다.
보안 그룹 및 포트 설정: 보안 그룹 설정에서 8080 포트에 대한 인바운드 규칙이 허용되어 있는지 확인하세요.
애플리케이션 로그: EC2 인스턴스에서 실행 중인 애플리케이션의 로그를 확인하여 어떠한 오류 메시지나 예외가 있는지 확인하세요. 이는 주로 Spring Boot 애플리케이션의 로그 파일에 기록됩니다.
EC2 인스턴스 상태: EC2 콘솔에서 인스턴스의 상태 및 이벤트를 확인하여 문제가 없는지 확인하세요.
보안 문제: 보안 그룹 및 네트워크 ACL이 문제를 일으키고 있는지 확인하세요.
Nginx 또는 Apache 등의 프록시 설정: 애플리케이션을 실행할 때 프록시 서버를 사용하는 경우, 프록시 서버의 설정도 확인해야 합니다.
$ sudo java -jar {JAR 파일 이름}.jar
* http:{퍼블릭 IPv4 DNS}:8080/
* http:{퍼블릭 IPv4 주소}:8080/