적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

컴퓨터시스템

.env 파일이란? + 생성하기

hongssup_ 2023. 12. 15. 19:03
반응형

fastlane 설정하면서 .env 파일을 만들어주었다.

 

 

.env 파일이란?

.env 파일은 소프트웨어 개발에서 환경 변수(environment variables)를 정의하고 관리하기 위해 사용되는 파일이다. 

이 파일은 주로 프로젝트의 루트 디렉토리에 위치하며, 주로 보안이 중요한 정보나 환경별로 달라져야 하는 설정값을 이 파일에 저장한다. 

 

.env 파일의 주요 기능

1. 환경 변수 관리 

.env 파일은 데이터베이스 연결 정보, API 키, 비밀 키, 서버 포트 등과 같이 환경에 따라 달라질 수 있는 설정값을 저장한다.

애플리케이션에서 사용되는 중요한 설정값을 환경 변수로 관리 가능. ex) 데이터베이스 연결 정보, API 키, 비밀 키, 포트 번호 등

2. 환경별 설정 분리

개발 환경(development), 테스트 환경(testing), 프로덕션 환경(production)에서 각각 다른 값을 사용할  있음.

3. 보안

민감한 정보를 코드베이스에 직접 포함하지 않고 .env 파일로 분리하여 보안을 강화. ex) API 키

4. 편리한 설정 관리

여러 환경에서 일관된 방법으로 설정 관리 가능

 

.env 파일 생성하는 법

터미널에 다음과 같이 입력해서 env 파일을 만들어줄 수 있다.

touch .env

 

.env 파일 사용하기

gitignore에 추가 - 민감한 정보가 포함될 수 있으므로 버전 관리 시스템(git)에 포함시키지 않도록 .gitignore 파일에 추가하는 것이 일반적. 

프로젝트 기본 환경 변수 템플릿으로 .env.example 또는 .env.default 파일을 만들어 제공할 수 있다. 

 

 

정리하자면

env 파일은 애플리케이션의 환경 변수를 관리하는 중요한 도구이다. 

민감한 정보나 환경 별로 달라져야 하는 설정을 분리할 수 있으며, 코드베이스의 보안과 유지 관리성을 높이는 데 기여한다. 

 

 

+ .env 파일과 .env.default 파일의 차이?

.env 파일 

: 애플리케이션이 실행될 때 실제로 사용되는 환경 변수를 정의하는 파일. API 키, 비밀번호 등 민감한 정보를 포함할 수 있다. 

개발, 테스트, 프로덕션 등 특정 환경에 맞춘 설정을 담고 있다. 

각 개발자나 배포 환경에서 개별적으로 설정될 수 있다. 

DATABASE_HOST=db.example.com 
DATABASE_PORT=5432 
API_KEY=actual-api-key

 

.env.default 파일

: 기본적인 환경 변수의 예시나 템플릿을 제공하는 파일. 이 파일을 기반으로 .env 파일을 생성할 수 있다.

실제로 애플리케이션이 사용하는 환경변수를 설정하지 않고, 대신 변수의 이름과 기본 값을 제시

보통 버전 관리에 포함되어, 프로젝트에 참여하는 모든 개발자에게 공유되고 프로젝트 기본 설정 가이드를 제시해줌.

새로운 개발자나 시스템에서 프로젝트를 시작할 때 이 파일을 복사하여 .env 파일로 변환한 후, 해당 환경에 맞게 수정하는 방식으로 사용됨. 

DATABASE_HOST=localhost 
DATABASE_PORT=5432 
API_KEY=your-api-key-here

 

728x90
반응형