Etc

[AWS] EC2 스프링 부트 배포 중 트러블슈팅 기록

sssbin 2023. 6. 26. 14:50

 

1️⃣ GitHub를 통해 프로젝트 코드 가져올 때 SSH Key를 생성해서 깃허브에 등록한 후 클론 과정에서 문제 발생

원인: 사용자의 PC에서 해당 폴더에 대한 접근 권한이 없어서 발생하는 에러

해결: 1) 권한 변경 -> 실패

         2) sudo 붙여서 실행 -> 실패

         3) web url 이용 -> 실패

         4) sudo 붙여서 web url 이용 -> 성공

대신 이렇게 하니 pull은 안 됐다🥲 수정 사항 있으면 파일 지우고 다시 클론하고 반복함 ㅜㅜ

 

 

2️⃣ ec2 접속 오류 (집에선 됐는데 밖에 나가니 안 됐다)

원인: IP가 바껴서 생기는 오류라고 생각해서

해결: 보안 그룹에서 인바운드 규칙 편집해서 ssh 포트 추가로 열어줬다.

 

 

3️⃣ gradlew 작동 에러 (error: could not find or load main class org.gradle.wrapper.gradlewrappermain)

원인: gradle-wrapper.jar 파일 부재

해결: 1) gitignore 파일에서 *.jar 제거 (나는 이렇게 해결했다.)

         2) 나~중에 찾아보니 gradle wrapper를 다시 만들어줘도 된다고 한다. 

gradle wrapper 다시 만들기 - [참고] https://androidhuman.tistory.com/537

 

 

4️⃣ 에러 메시지가 뭐라고 떴는지 기억이 안 남...

원인: yml 파일 부재 (환경변수 적용이 잘 안 돼서 aws 정보 그대로 넣어놓고 gitignore 처리해서 사용했었음)

해결: 이 파일을 깃에 올릴 순 없기 때문에 파일 하나만 옮기면 되니까 로컬에서 ec2로 파일 전송했다.

💡 파일 업로드

scp -i [pem파일경로] [업로드할 파일 이름] [ec2 user]@[ec2 public ip]:[경로]

💡 파일 다운로드

scp -i [pem파일경로] [ec2 user]@[ec2 public ip]:[경로] [다운로드 파일의 로컬 경로]

생각해보니 3번 오류를 이렇게 해결했어도 됐을 것 같다.

 

 

5️⃣ 파일 전송 중 scp permission denied

원인: scp 접근이 해당 파일에 대한 접근 권한을 가지고 있지 않기 때문

해결: 해당 파일의 권한 변경 (ec2 내에서 내가 파일을 쓰고자 하는 폴더의 권한을 변경)

sudo chmod 777 /var/www/KUIT_HACKATHON_team2-Server/main/resources

[참고] https://shanepark.tistory.com/388