동방에서 끄적끄적 시도해본 우리
빌드 실패를 겪고 gpt가 알려준걸 계속 보면서 거슬리는게 있었어요
사실 계속 데이터베이스와의 관계에서 문제 생겨나는건데 gpt는 계속 applcation.properties에 사용자 이름과 비밀번호를 다 넣으라고 얘기했어요
하지만 저희가 가지고 있는 민감한 정보는 털리며 안되기 때문에 백엔드 모두가 사용자 비밀번호와 이름을 gitignore에 추가를 했죠 !! (털리면 안됨 )
이렇게 되다 보니 당연히 .gitignore 파일에 추가된 파일이나 디렉토리는 Git이 추적하지 않으므로, 이 파일들이 Git 저장소에 커밋되지 않는다는 걸 알게 되었고, 따라서, Git 저장소를 클론하거나 SSH 링크를 통해 저장소를 배포할 때 .gitignore에 명시된 파일은 포함되지 않는 문제가 발생 할 수 있다는 !!걸 방금 깨닫게 되었어요.
이로 인해 해당 파일들이 필요한 설정 정보(예: 데이터베이스 사용자 이름 및 비밀번호)를 포함하고 있는 경우, 이러한 정보가 누락되어 애플리케이션이 올바르게 동작하지 않을 수 있을거라고 생각합니다...
이에 대한 해결 방안을 조금 알아본 결과 !
1. 환경 변수 사용
환경 변수를 사용하여 민감한 정보를 설정하면, 애플리케이션이 이를 참조하도록 할 수 있다고 합니다.
2. AWS Systems Manager Parameter Store 사용
AWS Systems Manager Parameter Store를 사용하여 환경 변수를 관리할 수 있다고 합니다... Parameter Store에 값을 저장한 후 이를 애플리케이션에서 읽어오는 것 !!
채연이가 적고 있습니다..
동방에서 끄적끄적 시도해본 우리 빌드 실패를 겪고 gpt가 알려준걸 계속 보면서 거슬리는게 있었어요
사실 계속 데이터베이스와의 관계에서 문제 생겨나는건데 gpt는 계속 applcation.properties에 사용자 이름과 비밀번호를 다 넣으라고 얘기했어요
하지만 저희가 가지고 있는 민감한 정보는 털리며 안되기 때문에 백엔드 모두가 사용자 비밀번호와 이름을 gitignore에 추가를 했죠 !! (털리면 안됨 )
이렇게 되다 보니 당연히 .gitignore 파일에 추가된 파일이나 디렉토리는 Git이 추적하지 않으므로, 이 파일들이 Git 저장소에 커밋되지 않는다는 걸 알게 되었고, 따라서, Git 저장소를 클론하거나 SSH 링크를 통해 저장소를 배포할 때 .gitignore에 명시된 파일은 포함되지 않는 문제가 발생 할 수 있다는 !!걸 방금 깨닫게 되었어요.
이로 인해 해당 파일들이 필요한 설정 정보(예: 데이터베이스 사용자 이름 및 비밀번호)를 포함하고 있는 경우, 이러한 정보가 누락되어 애플리케이션이 올바르게 동작하지 않을 수 있을거라고 생각합니다...
이에 대한 해결 방안을 조금 알아본 결과 !
1. 환경 변수 사용 환경 변수를 사용하여 민감한 정보를 설정하면, 애플리케이션이 이를 참조하도록 할 수 있다고 합니다.
그리고 EC2 인스턴스에서 애플리케이션을 실행하기 전에 환경 변수를 설정
2. AWS Systems Manager Parameter Store 사용 AWS Systems Manager Parameter Store를 사용하여 환경 변수를 관리할 수 있다고 합니다... Parameter Store에 값을 저장한 후 이를 애플리케이션에서 읽어오는 것 !!
3. CI/CD 파이프라인을 통한 파일 배포 만약 application-aws.properties 파일을 유지하되 Git에 공개되지 않도록 하고 싶다면, 파일을 배포 과정에서 포함시킬 수 있다고 합니다아..
https://velog.io/@kimujin99/Side-project-AWS-EC2%EC%97%90-Spring-project-%EB%B0%B0%ED%8F%AC%ED%95%98%EA%B8%B02
-채연 : 이거에 대해서 저도 좀 더 알아보고 내용 추가해보록 할게요 !
노션에 이미 써놨지만 공유 하자면