CI/CD로 AWS 배포를 구축하면서 발생한 것들
퍼블릭 IPv4 DNS 접근이 안됨
조금 찾아보니 8080 포트에 인바운드 규칙이 적용안되있는 걸 파악했다.
해당 부분에 접속한다.
다음과 같이 인바운드 규칙을 추가한다. 그러면 8080 포트에 대해 모든 접속을 허가해주었기 때문에 정상적으로 동작한다.
Gradle 버전 오류
https://aisi1004.tistory.com/842
빌드시 --warning-mode all 경고 없애기
빌드시 --warning-mode all 경고 없애기 Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/6.1.1/userguide/comm
aisi1004.tistory.com
따로 캡쳐해둔 것은 없어서 에러는 이 상황이랑 같아 링크를 첨부했다. 위의 링크를 타고 들어가면 확인되는 것은 내 로컬에서 gradle 버전이 맞지 않아 해결하는 방법을 적어 놓았는데 나의 경우는 이걸 말한 게 아니다.
EC2 서버에서 사용하고 있는 Ubuntu 서버의 경우, 마찬가지로 스프링부트를 실행시키려고 하면 위와 같은 에러를 발생시키게 된다. 따라서 --warning-mode all의 경고를 없애려면 CLI 명령어를 사용해 gradle 버전이 맞지 않다는 경고문을 무시하게 만들어야 한다.
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
# Configure Gradle for optimal use in GiHub Actions, including caching of downloaded dependencies.
# See: https://github.com/gradle/actions/blob/main/setup-gradle/README.md
- name: Setup Gradle
uses: gradle/actions/setup-gradle@417ae3ccd767c252f5661f1ace9f835f9654f2b5 # v3.1.0
- name: Grant execute permission for gradlew
run: chmod +x ./gradlew
shell: bash
- name: Build with Gradle Wrapper
run: ./gradlew build -x test
- name: Make Zip File
run: zip -qq -r ./$GITHUB_SHA.zip .
shell: bash
deploy하는 yml 파일 일부를 가져왔다. Build with Gradle Wrapper 단계를 보면 gradle 버전을 그냥 무시하고 실행시키도록 run을 작성했다. 다음과 같이 CLI 명령어를 입력 후에는 정상적으로 빌드될 수 있었다.