.env 환경변수 파일 작성법 및 관리

NewNewDaddy·2023년 9월 12일
0

PYTHON

목록 보기
1/7
post-thumbnail

0. INTRO

  • 비밀번호, 아이디, 개인정보 등 개발을 함에 있어서 외부로 노출이 되선 안되는 변수들이 있다. 이러한 변수들을 다룰때는 하드코딩 해놓지 않고 변수만을 모아두는 .env라는 파일을 만든 후 다른 폴더에서 해당 파일 내의 인자들을 참조하는 형식으로 사용하게된다. 이때 주로 쓰는 라이브러리가 python의 dotenv이다. 사용법을 간략히 알아보자.

1. 설치

pip install python-dotenv

2. .env 파일 작성

  • 키 = 값 형식으로 작성해주면 된다.

    
    BUCKET = 'testenv123'
    REGION_NAME = 'ap-northeast-2'
    AWS_ACCESS_KEY_ID = 'helloworld'
    AWS_SECRET_ACCESS_KEY = 'hellopassword'

3. 불러오기 및 선언

  1. 절대경로 입력

    
    import dotenv
    
    dotenv.load_dotenv('.env파일의 경로')
  2. find_dotenv 사용

    
    import dotenv
    
    dotenv_file = dotenv.find_dotenv()
    dotenv.load_dotenv(dotenv_file)

4. 사용

  • os 라이브러리를 사용하여 .env 파일에 선언된 인자들을 불러온다.

    
    bucket = os.environ.get("BUCKET")
    region_name = os.environ.get("REGION_NAME")
    aws_access_key_id = os.environ.get("AWS_ACCESS_KEY_ID")
    aws_secret_access_key = os.environ.get("AWS_SECRET_ACCESS_KEY")

5. 전체 검색

  • .env 파일에 선언된 인자들을 Dictionary 형태로 출력해준다.

    
    import dotenv
    
    dotenv_file = dotenv.find_dotenv()
    
    # 변수들 전체 출력
    print(dotenv.dotenv_values(dotenv_file))
    
    # 특정 변수값만 출력
    print(dotenv.dotenv_values(dotenv_file)['key'])

6. 변수값 수정

  • set_key 메소드를 이용하며 실행후 .env 파일을 보면 해당 KEY의 값이 변경된 것을 확인 할 수 있다.

    
    import dotenv
    
    dotenv_file = dotenv.find_dotenv()
    
    dotenv.set_key(dotenv_file, '변경할 KEY', '변경할 VALUE')
    
    # BUCKET 의 값을 바꾸고 싶을 때
    dotenv.set_key(dotenv_file, 'BUCKET', 'changedvalue123')
profile
데이터 엔지니어의 작업공간 / #PYTHON #SPARK #AWS #NCLOUD

0개의 댓글