애플리케이션 개발 시 API 키와 같은 민감한 정보는 소스 코드에 직접 작성하지 않고 안전하게 관리하는 것이 매우 중요합니다. VS Code에서 Python을 사용할 때, API 키를 관리하는 가장 일반적인 두 가지 방법인 시스템 환경 변수와 .env 파일에 대해 단계별로 상세히 정리합니다.
[ 방법 1: 시스템 환경 변수에 API 키 저장 및 사용 ]
시스템 환경 변수는 운영 체제 전체에서 접근할 수 있는 전역 변수입니다. 이 방법을 사용하면 한 번만 설정하면 해당 컴퓨터의 모든 프로그램에서 API 키를 사용할 수 있습니다.
단계 1: 시스템 환경 변수에 API 키 설정하기
a) Windows (PowerShell 사용)
- PowerShell을 관리자 권한으로 실행합니다. 시작 메뉴에서 powershell을 검색한 후, Windows PowerShell을 마우스 오른쪽 버튼으로 클릭하고 관리자 권한으로 실행을 선택합니다.
- 다음 명령어를 입력하여 사용자 환경 변수에 API 키를 설정합니다. 'your_api_key' 부분에 실제 OpenAI API 키를 붙여넣기 합니다.
[System.Environment]::SetEnvironmentVariable('OPENAI_API_KEY','your_api_key','User') - PowerShell 창을 닫고 다시 새로 엽니다. 환경 변수는 새로운 세션에서부터 적용됩니다.
b) macOS 또는 Linux (Bash/Zsh 터미널 사용)
- 터미널을 엽니다.
- 다음 명령어를 입력하여 .bash_profile 또는 .zshrc 파일을 편집합니다.
- Bash 사용자: nano ~/.bash_profile
- Zsh 사용자: nano ~/.zshrc
- 파일의 맨 아래에 다음 줄을 추가합니다. 'your_api_key' 부분에 실제 API 키를 넣습니다.
export OPENAI_API_KEY='your_api_key' - 파일을 저장하고 종료합니다. (Ctrl + X, Y, Enter)
- 다음 명령어를 입력하여 변경 사항을 적용합니다.
- Bash 사용자: source ~/.bash_profile
- Zsh 사용자: source ~/.zshrc
단계 2: 환경 변수 설정 확인하기
설정이 올바르게 되었는지 확인하기 위해 새로운 터미널을 열고 다음 명령어를 실행합니다.
- Windows (PowerShell):
echo $env:OPENAI_API_KEY - macOS / Linux:
echo $OPENAI_API_KEY
입력한 API 키가 출력되면 성공적으로 설정된 것입니다.
단계 3: VS Code에서 Python 코드로 API 키 불러오기
이제 VS Code에서 파이썬 스크립트를 작성하여 시스템 환경 변수를 불러올 수 있습니다. os 모듈을 사용합니다.
import os
# 시스템 환경 변수에서 API 키 불러오기
openai_api_key = os.getenv("OPENAI_API_KEY")
# 키가 제대로 불러와졌는지 확인
if openai_api_key:
print("API 키가 성공적으로 불러와졌습니다.")
else:
print("API 키를 찾을 수 없습니다.")
# 이후에 openai_api_key 변수를 사용하여 API 호출
# ...
[ 방법 2: .env 파일에 API 키 저장 및 사용 ]
.env 파일은 프로젝트 루트 디렉토리에 위치하는 숨김 파일로, 주로 로컬 개발 환경에서 사용됩니다. 이 방법은 프로젝트별로 다른 환경 변수를 관리할 수 있어 편리합니다.
단계 1: python-dotenv 라이브러리 설치
터미널을 열고 다음 명령어를 입력하여 필요한 라이브러리를 설치합니다.
pip install python-dotenv
단계 2: .env 파일 생성 및 API 키 저장
- VS Code에서 프로젝트 폴더를 엽니다.
- 탐색기 패널에서 프로젝트 루트 디렉토리에 **.env**라는 이름의 파일을 생성합니다. 파일 이름 앞에 점(.)을 붙이는 것이 중요합니다.
- .env 파일 안에 다음 형식으로 API 키를 저장합니다.
OPENAI_API_KEY='your_api_key'- 'your_api_key' 부분에 실제 API 키를 입력합니다.
- 주석(#)을 사용하여 설명을 추가할 수도 있습니다.
단계 3: VS Code에서 Python 코드로 API 키 불러오기
.env 파일에 저장된 환경 변수는 os 모듈이 자동으로 읽어오지 못합니다. dotenv 라이브러리의 load_dotenv() 함수를 호출하여 .env 파일을 로드해야 합니다.
import os
from dotenv import load_dotenv
# .env 파일에 저장된 환경 변수들을 로드
load_dotenv()
# 환경 변수에서 API 키 불러오기
openai_api_key = os.getenv("OPENAI_API_KEY")
# 키가 제대로 불러와졌는지 확인
if openai_api_key:
print("API 키가 성공적으로 불러와졌습니다.")
else:
print("API 키를 찾을 수 없습니다.")
# 이후에 openai_api_key 변수를 사용하여 API 호출
# ...
단계 4 (필수): .gitignore 파일에 .env 추가하기
.env 파일은 민감한 정보를 담고 있으므로, 실수로 Git 저장소에 업로드되지 않도록 해야 합니다.
- 프로젝트 루트 디렉토리에 .gitignore 파일을 엽니다. (없으면 새로 생성)
- 파일의 맨 아래에 다음 줄을 추가합니다.
# 환경 변수 파일 제외
.env - 이렇게 하면 Git이 .env 파일을 무시하게 되어 안전하게 관리할 수 있습니다.
[ 두 가지 방법 비교 및 권장 사항 ]
구분 | 시스템 환경 변수 | .env 파일 |
장점 | 한 번 설정하면 모든 프로젝트에서 사용 가능<br>프로젝트에 키를 저장할 필요 없음 | 프로젝트별로 다른 키를 편리하게 관리 가능<br>협업 시 환경 변수 목록 공유가 쉬움 |
단점 | 프로젝트별로 다른 키를 사용하기 번거로움<br>민감한 정보가 컴퓨터에 영구적으로 저장됨 | Git에 업로드되지 않도록 주의해야 함<br>(.gitignore 사용 필수)<br>.gitignore 파일에 .env 추가하는 것을 잊지 말아야 함 |
권장 | 개인 프로젝트에서 주로 하나의 API 키를 사용하는 경우 | 팀 프로젝트나 여러 개의 API 키를 사용하는 경우 |
두 가지 방법 중 본인의 작업 환경과 프로젝트 성격에 맞는 방법을 선택하여 사용하시면 됩니다. .env 파일 방법은 Git을 사용하는 협업 환경에서 특히 유용합니다.
'AI, 클라우드, 협업, 교육, 문서, 업무자동화' 카테고리의 다른 글
VS Code에서 Amazon CodeWhisperer 사용하기 (0) | 2025.08.04 |
---|---|
AWS EC2 인스턴스에 설치된 백엔드(Flask + Qdrant)와 프론트엔드(React serve) 구동순서 정리 (0) | 2025.07.25 |
Address already in use" (이미 사용 중인 주소) 문제 (0) | 2025.07.25 |
React 챗봇(ChatBot) 페이지 코드 정리 (0) | 2025.07.22 |
간단한 RAG(Retrieval Augmented Generation) 기반 챗봇 서비스 (0) | 2025.07.20 |