[python] 파이썬 프로젝트 배포시 환경 변수 설정 방법

파이썬으로 개발한 프로젝트를 배포할 때는 종종 환경 변수를 설정해야하는 경우가 있습니다. 환경 변수를 설정하는 방법은 다양하지만, 여기에서는 파이썬 가상 환경에서 환경 변수를 설정하는 방법에 대해 알아보겠습니다.

1. 가상 환경 생성

먼저, 프로젝트를 디렉토리에 가상 환경을 생성해야합니다. 파이썬 가상 환경을 사용하면 프로젝트 별로 독립적인 환경을 구성할 수 있습니다. 가상 환경을 생성하기 위해 다음 명령을 사용하세요.

python3 -m venv myenv

위 명령을 실행하면 myenv라는 이름의 가상 환경이 생성됩니다.

2. 가상 환경 활성화

가상 환경을 생성했다면, 다음으로 해당 가상 환경을 활성화해야합니다. 가상 환경을 활성화하면 해당 가상 환경에서 파이썬 관련 패키지를 설치하고 실행할 수 있습니다. 가상 환경을 활성화하기 위해 아래 명령을 실행하세요.

myenv\Scripts\activate
source myenv/bin/activate

가상 환경이 활성화되면 터미널 프롬프트 왼쪽에 (myenv) 표시가 나타납니다.

3. 환경 변수 설정

이제 가상 환경이 활성화되었으므로, 환경 변수를 설정할 수 있습니다. 파이썬에서는 os.environ을 사용하여 환경 변수를 설정 및 엑세스할 수 있습니다.

import os

# 환경 변수 설정
os.environ['변수이름'] = '값'

# 환경 변수 엑세스
value = os.environ.get('변수이름')

위 코드에서 변수이름에는 설정하고자 하는 환경 변수의 이름을, 에는 해당 환경 변수에 할당할 값을 입력하세요.

4. 환경 변수 사용 예시

환경 변수를 설정하고 사용하는 예시를 살펴보겠습니다. 예를 들어, 데이터베이스 연결 정보를 환경 변수로 설정하는 경우를 생각해 봅시다.

import os
import psycopg2

# 환경 변수에서 데이터베이스 연결 정보 가져오기
DATABASE_HOST = os.environ.get('DATABASE_HOST')
DATABASE_PORT = os.environ.get('DATABASE_PORT')
DATABASE_NAME = os.environ.get('DATABASE_NAME')
DATABASE_USER = os.environ.get('DATABASE_USER')
DATABASE_PASSWORD = os.environ.get('DATABASE_PASSWORD')

# PostgreSQL에 연결
connection = psycopg2.connect(
    host=DATABASE_HOST,
    port=DATABASE_PORT,
    dbname=DATABASE_NAME,
    user=DATABASE_USER,
    password=DATABASE_PASSWORD
)

위 예시에서는 환경 변수를 사용하여 데이터베이스 연결 정보를 가져오고, psycopg2 라이브러리를 사용하여 PostgreSQL에 연결합니다.

요약

이제 파이썬 프로젝트를 배포할 때 환경 변수를 설정하는 방법에 대해 알게 되었습니다. 가상 환경을 생성하고 활성화하여 해당 가상 환경에서 환경 변수를 설정할 수 있습니다. 파이썬에서는 os.environ을 사용하여 환경 변수를 설정하고 엑세스할 수 있습니다. 환경 변수를 사용하면 프로젝트의 보안성과 확장성을 향상시킬 수 있습니다.

참고: Python docs - os.environ