java7 [Spring] Github Action과 Docker를 활용한 CD 작성기 프로젝트 구조- 언어 및 프레임워크: Java, Spring Boot- 어플리케이션 배포 Platform: Docker- Source 관리: Git & Github(저장소) - 배포 클라우드 및 리소스: AWS EC2 CI 작성기는 아래 글을 참고해주세요. [Spring] Github Action과 Docker를 활용한 CI 작성기프로젝트 구조- 언어 및 프레임워크: Java, Spring Boot- 어플리케이션 배포 Platform: Docker- Source 관리: Git & Github(저장소) 현재 멀티 모듈로 구성되어 있는 Api 서버 제작 프로젝트를 하고 있습니다. 어플happiestlife.tistory.com 이번 CD에서는 CI때와 달라진 부분이 있다면 멀티 모듈 프로젝트에서 단일 모듈 .. 2025. 10. 29. [Spring] IntelliJ에서 환경변수 값을 수정해도 application.yml 파일의 placeholder(${})에 이전 값이 매핑되는 문제 1. 현상프로젝트에서 DB의 비밀번호와 같은 secret 값은 application.yml 파일에 기재하면 안되기 때문에 환경 변수에 넣어 관리하고 있었습니다. 실제 application.yml 파일과 환경 변수 세팅은 아래와 같습니다. 만약 환경 변수의 값을 바꾸고 spring 어플리케이션을 재시작하면 값이 정상적으로 파싱될 줄 알았는데, 지속적으로 수정하기 전 값을 물고 있었습니다. 2. 원인인텔리제이 내부적으로 application.yml의 파일의 Placeholder가 치환되면 해당 값을 캐시하고 사용하는 것으로 확인되었습니다. 3. 해결Intellij에 저장되어 있는 캐시를 무력화시켜주시면 됩니다.File -> Invalidate Caches..를 누르고 캐시를 무력화시켜주시면 Intellij.. 2025. 8. 16. [Spring Security] 인증 후 인가 SecurityContext 영속성 유지 안됨 문제 1. 현상인증의 영속성을 유지하기 위해서 세션을 활용하려고 하였습니다.그리고 아래와 같이 https://docs.spring.io/spring-security/reference/servlet/authentication/persistence.html 가이드에 맞게 코드를 작성하였습니다. 그런데 로그인 이후에 다른 API를 호출하여도 인증의 영속성이 유지되지 않았고 403 Forbidden 오류가 떨어졌습니다. 2. 원인SecurityContextConfigurer 설정 클래스에서는 기본적으로 개발자가 수동으로 SecurityContext를 저장하도록 설정되어 있습니다.그렇기 때문에 각 Request마다 SecurityContext를 저장하는 코드를 작성하지 않아서 영속성이 유지되지 않았던 현상이었습니다. .. 2025. 7. 18. [Spring] Multi-module 프로젝트에서 테스트용 docker-compose 파일 공통화 현재 내가 진행중인 토이 프로젝트의 환경은 아래와 같다. 모듈에 관한 간략한 설명은 아래와 같다. 1. User 모듈사용자 관련 비지니스 로직 및 기능 담당2. Sales 모듈매출 / 매입 관련 비지니스 로직 및 기능 담당3. Common 모듈테스트 코드 외에서 공통적으로 사용되는 기능 담당4. Test 모듈테스트 코드에서 공통적으로 사용되는 기능 담당5. Api 모듈어플리케이션 시작 및 API 관련 기능 담당 그리고 각 모듈은 프로젝트의 최상위 디렉토리에서 빌드되어 docker 환경에서 띄워지게 된다. 따라서 docker-compose.yml, Dockerfile은 모두 최상위 디렉토리에 위치한다. 그리고 실제 docker 환경 기반의 테스트를 위해 "testcontainers" 를 사용한다. 여.. 2025. 3. 11. 이전 1 2 다음