inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

비전공자도 이해할 수 있는 CI/CD 입문·실전

[실습] .gitignore에 추가된 application.yml을 CI/CD로 관리하기

환경 변수 vs gitignore

127

yso829612

작성한 질문수 26

0

중요한 값을 레포지토리에 노출시키고 싶지 않을 때 yml 파일을 gitignore에 포함시키는 방법을 쓰거나 환경 변수를 사용하여 노출을 막는 방법이 있는 것 같은데 둘 중에 아무거나 써도 상관없는건가요, 아니면 때에 따라 다른 방식을 써야하는건가요?

aws docker ci/cd github-actions aws-code-deploy infrastructure aws-ec2

답변 2

0

JSCODE 박재성

안녕하세요 yso829612님!

두 가지 방법 중 아무거나 사용해도 괜찮습니다:)

두 가지 방법의 장단점을 고려하셔서 어떤 방법을 쓸 지 선택하시면 좋습니다!

이번에 인프런 AI 인턴이 잘 답변해준 것 같아서 인프런 AI 답변 인용하도록 할게요~!!


 

  1. gitignore 사용: yml 파일을 gitignore에 추가하여 레포지토리에 포함하지 않는 방식은 간단하고 빠르게 설정할 수 있습니다. 이 방법은 간혹 프로젝트 규모가 작거나 팀 내부에서 코드만 공유하는 경우에 적절할 수 있습니다. 그러나, 팀원이 늘어나거나 클라우드 환경 등 다양한 경우로 배포 시 각자의 로컬 환경에서 yml 파일을 수동으로 관리해야 하는 번거로움이 있습니다.

  2. 환경 변수 사용: 보안 또는 다중 환경에서 yml 파일의 민감한 정보를 안전하게 관리하는 데 적합합니다. 환경 변수는 배포 환경에 따라 동적으로 설정할 수 있어 유연성이 높습니다. CI/CD 파이프라인에서 환경 변수로 민감한 정보를 관리하면, 한 곳만 수정해서 배포 전체에 적용할 수 있습니다. 다만, 설정 과정이 다소 복잡할 수 있으며 환경 변수 관리 시스템이 필요합니다.

 


이 외로 궁금하신 점 생기시면 댓글 달아주세요~~

 

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. yso829612님!

중요한 값을 레포지토리에 노출시키지 않기 위해 두 가지 방법인 gitignore에 포함시키는 방법과 환경 변수를 사용하는 방법 중 어떤 것을 사용해야 하는지 궁금하신 것 같네요.

  1. gitignore 사용: yml 파일을 gitignore에 추가하여 레포지토리에 포함하지 않는 방식은 간단하고 빠르게 설정할 수 있습니다. 이 방법은 간혹 프로젝트 규모가 작거나 팀 내부에서 코드만 공유하는 경우에 적절할 수 있습니다. 그러나, 팀원이 늘어나거나 클라우드 환경 등 다양한 경우로 배포 시 각자의 로컬 환경에서 yml 파일을 수동으로 관리해야 하는 번거로움이 있습니다.

  2. 환경 변수 사용: 보안 또는 다중 환경에서 yml 파일의 민감한 정보를 안전하게 관리하는 데 적합합니다. 환경 변수는 배포 환경에 따라 동적으로 설정할 수 있어 유연성이 높습니다. CI/CD 파이프라인에서 환경 변수로 민감한 정보를 관리하면, 한 곳만 수정해서 배포 전체에 적용할 수 있습니다. 다만, 설정 과정이 다소 복잡할 수 있으며 환경 변수 관리 시스템이 필요합니다.

관련 유사 질문:

이 두 가지 방법 중 무엇이 더 나은지 선택하는 것은 프로젝트의 요구사항이나 팀의 환경에 따라 달라질 수 있습니다. 일반적으로 민감한 정보를 다룰 때는 환경 변수 사용을 추천드립니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

무중단 배포

0

57

2

workflows/deploy.yml 궁금증

0

52

2

.git-credentials 파일이 없이 배포가 성공한 이유가 궁금

0

57

1

(해결 - 정보공유) /home/runner/work/_temp/6be6e~0.sh: line 1: ./gradlew: Permission denied 오류

1

63

2

(확인 완료) git config --global creadential.helper store 후에도 비밀번호 물어보는 현상

1

71

2

질문_ 강의 순서 및 그외

0

70

2

섹션 4 - Docker + 백엔드(Spring Boot)

0

63

2

deploy.yml작성후 원격에 push불가

0

63

2

CodeDeploy 사용시 registration 요구

0

106

3

스프링 종료 명령어

0

68

2

RAM & 스왑메모리 폭증하는 문제

0

102

2

섹션 4, 5와 6, 7은 유사한가요?

0

66

1

code deploy 배포입니다.

0

98

3

사용자 삭제가 안되는 이유

0

87

2

이미지 pull중 no basic auth credentials 문제입니다.

0

113

2

Docker Compose파일을 작성했을때 CI CD와의 연동

0

96

2

보안그룹 생성 오류

0

84

3

AWS 5월에 탈퇴해서 그러는데....

0

81

1

배포 오류

0

80

2

node.js 설치시 에러

0

149

2

appspec.yml, 스크립트 파일 수정요청

0

82

2

appleboy/ssh-action stop_script 대체

1

181

2

Vue.js 파일 배포

0

61

2

aws를완강하고 ci/cd로 넘어왔습니다.

0

85

1