[Python] Pipenv 부터 AWS Lambda 배포까지 (1)

date
slug
pipenv-lambda-1
status
Published
tags
Python
summary
Pipenv 및 람다 튜토리얼 - 1
type
Post
❓ 이 글은 Pipenv의 간단한 활용법과 이를 이용해 작성된 코드의 Lambda 업로드 방법을 담고 있습니다.
댓글 크롤링이 필요한 프로젝트를 진행하면서, 크롤링 스크립트를 작성하기 위해 파이썬을 사용하게 되었다.
그러나 이런저런 외부 라이브러리를 사용하기 위해 설치를 반복하다보니, 라이브러리끼리 충돌하여 설치가 제대로 되지 않거나, 설치는 되었음에도 제대로 동작하지 않는 문제가 발생하여 Java의 Gradle처럼 의존성 관리가 필요함을 느끼게 되었다.
찾아보니 venv, conda, pipenv 라는 도구가 있었고, pipenv는 파이썬 버전까지 함께 관리해준다고 하여 pipenv를 사용하기로 결정하였다.

Pipenv 설치 및 사용

먼저 Pipenv를 설치해보자. 공식문서는 아래와 같다.

pipenv 설치

설치는 간단하게 명령어만 입력해주면 끝나고, 두 가지 방법이 있다.
1. brew를 이용한 설치
2. pip를 이용한 설치

가상환경 구성하기

설치가 끝났다면 작업할 폴더로 이동하여, 아래 명령어를 이용해 가상환경을 구성한다. 나의 경우는 python 3.9.6 버전을 사용하였다.
위의 명령어를 입력하고 나면, 아래와 같은 Pipfile이 생성된다. Pipfile은 자바스크립트의 pakage.json 처럼 메타정보를 담은 파일로, pipenv를 이용해 의존성을 관리할 때 가장 중요한 파일이다.

가상환경 사용하기

아래의 명령어를 이용해 pipenv로 생성한 가상환경을 사용하거나, 어떤 가상환경을 사용중인지 확인할 수 있다.
1. 가상환경 실행
2. 실행 중인 가상환경 확인
3. 가상환경 비활성화

패키지 설치하기

pipenv를 이용한 가상환경 세팅이 완료되었으면, 패키지를 설치할 차례이다. 앞선 명령어들과 똑같이 pipenv 명령어를 이용해 간단히 설치가 가능하다.
설치가 완료되면 Pipfile에 설치한 패키지가 명시된다.
나의 경우 필요한 모든 패키지를 설치하고나니, 아래와 같은 Pipfile이 완성되었다.
[Pipfile]
여기까지 완료했다면, 이제는 신나게 코드를 작성하면 된다. 코드를 작성하면서 필요한 의존성들은 마찬가지로 pipenv install 명령어를 이용해 설치를 진행해준다. 다음으로는 더 쉬운 람다 업로드에 대해 알아보자.
 

© Daehwi Kim 2025