[파이썬] 가상 환경 자동 생성 스크립트 작성하기

가상 환경은 프로젝트별로 필요한 패키지 라이브러리를 격리하여 관리할 수 있는 방법입니다. Python에서는 venv 모듈을 사용하여 가상 환경을 생성하고 관리할 수 있습니다. 이번 블로그 포스트에서는 venv 모듈을 이용하여 가상 환경을 자동으로 생성하는 스크립트를 작성해보겠습니다.

필요한 라이브러리 설치

해당 스크립트를 실행하기 위해 venv 모듈을 설치해야 합니다. 아래의 명령어를 사용하여 설치합니다.

pip install venv

스크립트 작성

아래는 venv 모듈을 이용하여 가상 환경을 생성하는 스크립트의 예시입니다.

import os
import sys
import subprocess


def create_virtualenv(project_name):
    # 프로젝트 이름으로 가상 환경 디렉토리 경로 생성
    venv_path = os.path.join(os.getcwd(), project_name)

    # 가상 환경 생성
    subprocess.run([sys.executable, '-m', 'venv', venv_path], check=True)

    # 생성된 가상 환경의 파이썬 실행 경로 가져오기
    python_executable = os.path.join(venv_path, 'bin', 'python')

    # 가상 환경에서 필요한 패키지 설치
    subprocess.run([python_executable, '-m', 'pip', 'install', 'package1', 'package2', 'package3'])

    # 생성된 가상 환경의 파이썬 실행 환경 변수 설정
    os.environ['VIRTUAL_ENV'] = venv_path
    os.environ['PATH'] = os.path.join(venv_path, 'bin') + os.pathsep + os.environ['PATH']

    print('가상 환경이 생성되었습니다.')


if __name__ == "__main__":
    project_name = input('프로젝트 이름을 입력하세요: ')
    create_virtualenv(project_name)

실행하기

위의 코드를 create_venv.py 라는 이름으로 저장한 후, 터미널에서 다음 명령어를 실행하여 가상 환경을 생성할 수 있습니다.

python create_venv.py

프로젝트 이름을 입력하면 해당 이름의 가상 환경이 자동으로 생성됩니다. 가상 환경에 필요한 패키지는 코드 내에서 설정할 수 있습니다.

마무리

Python의 venv 모듈을 사용하면 가상 환경을 손쉽게 생성하고 관리할 수 있습니다. 이번 블로그 포스트에서는 venv 모듈을 이용하여 가상 환경을 자동으로 생성하는 스크립트를 작성하는 방법에 대해 알아보았습니다. 이를 통해 프로젝트별로 필요한 패키지를 격리하여 관리할 수 있는 환경을 구성할 수 있습니다.