Google Colab & Jupyter Notebook에서 dotenv 사용법
개요
환경 변수를 코드 내에 직접 작성하는 것은 보안상 위험할 수 있다. 이를 방지하기 위해 .env
파일을 사용하여 환경 변수를 저장하고, dotenv
라이브러리를 활용해 이를 불러올 수 있다.
이번 글에서는 Google Colab 및 Jupyter Notebook에서 dotenv
사용법을 다룬다.
1. dotenv
란?
dotenv
는 .env
파일에 저장된 환경 변수를 쉽게 로드할 수 있도록 도와주는 라이브러리이다. 이를 활용하면 API 키, 데이터베이스 접속 정보 등을 안전하게 관리할 수 있다.
Python에서는 python-dotenv
을 사용한다.
2. dotenv
설치하기
- Jupyter Notebook 또는 Google Colab에서 설치
!pip install python-dotenv
설치가 완료되면 환경 변수를 저장할 .env
파일을 생성한다.
3. .env
파일 생성하기
Google Colab 및 Jupyter Notebook은 로컬 환경이 아니기 때문에 .env
파일을 수동으로 생성해야 한다.
.env
파일 생성
아래 코드를 실행하면 .env
파일이 생성된다.
%%writefile .env
SECRET_KEY=mysecretkey
DATABASE_URL=postgres://user:password@localhost:5432/mydb
이제 .env
파일이 현재 디렉토리에 저장되었다.
4. .env
파일에서 환경 변수 불러오기
- 이제
dotenv
를 사용하여 환경 변수를 불러오자.
from dotenv import load_dotenv
import os
# .env 파일 로드
load_dotenv()
# 환경 변수 가져오기
secret_key = os.getenv("SECRET_KEY")
database_url = os.getenv("DATABASE_URL")
print("SECRET_KEY:", secret_key)
print("DATABASE_URL:", database_url)
✅ 실행 결과:
SECRET_KEY: mysecretkey
DATABASE_URL: postgres://user:password@localhost:5432/mydb
5. .env
파일이 잘 로드되지 않을 때
환경 변수가 올바르게 로드되지 않는 경우, dotenv_values()
를 사용하여 직접 확인할 수 있다.
from dotenv import dotenv_values
config = dotenv_values(".env")
print(config)
실행 결과:
{'SECRET_KEY': 'mysecretkey', 'DATABASE_URL': 'postgres://user:password@localhost:5432/mydb'}
이렇게 하면 .env
파일의 내용을 딕셔너리 형태로 불러올 수 있다.
6. Google Colab에서 .env
파일 유지하는 방법
Google Colab에서는 런타임이 초기화되면 .env
파일이 삭제될 수 있다. 이를 방지하려면 .env
파일을 Google Drive에 저장하는 방법을 사용할 수 있다.
(1) Google Drive에 .env
저장 및 로드
- Google Drive를 마운트한다.
from google.colab import drive
drive.mount('/content/drive')
.env
파일을 Google Drive에 저장한다.
%%writefile /content/drive/MyDrive/.env
SECRET_KEY=mysecretkey
DATABASE_URL=postgres://user:password@localhost:5432/mydb
.env
파일을 불러올 때 Google Drive에서 로드한다.
from dotenv import load_dotenv
import os
load_dotenv("/content/drive/MyDrive/.env")
secret_key = os.getenv("SECRET_KEY")
print("SECRET_KEY:", secret_key)
- 이렇게 하면 Google Drive에
.env
파일을 저장해두고, 런타임이 재설정되어도 유지할 수 있다.
7. 마무리
Google Colab 및 Jupyter Notebook에서 dotenv
를 활용하면 보안에 민감한 정보를 안전하게 관리할 수 있다. .env
파일을 직접 생성하고 불러오는 방법을 숙지하면 환경 변수를 더욱 효과적으로 활용할 수 있다.
요약:
python-dotenv
를 설치한다..env
파일을 생성하여 환경 변수를 저장한다.load_dotenv()
를 사용하여 환경 변수를 불러온다.- Google Drive에
.env
파일을 저장하면 Colab에서 유지할 수 있다.
이제 환경 변수를 안전하게 관리하며 Google Colab & Jupyter Notebook을 활용해 보자! 🚀