Python

requirements.txt의 특정 라이브러리만 특정 url에서 install하기

체봄 2023. 4. 28. 21:59

 

requirements.txt 예시

어떤 프로젝트를 실행하는 데에 필요한 라이브러리들을 버전과 함께 requirements.txt 파일에 적어두고,

$ pip install -r requirements.txt 명령어를 수행하면 해당 파일 내에 적힌 라이브러리들을 일괄 설치할 수 있다.

이 명령어는 default로 PyPI url로부터 라이브러리를 설치한다.

 

그런데, 가끔 어떤 라이브러리는 PyPI가 아닌 특정한 url로부터 설치해야 하는 경우가 있다.

나의 경우는 paddlepaddle 라이브러리를 설치하는 과정에서,  $ pip install paddlepaddle로 설치를 하면 실행 중에 에러가 나고 $ pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple 로 설치를 해야 잘 작동하는 상황이었다.

내 프로젝트를 수행할 때에는 paddlepaddle 라이브러리 설치가 필요하다는 것을 requirements.txt에 적어야 하는데, requirements.txt 파일 내에는 라이브러리의 이름 및 버전만을 적어야 하고 option이나 url은 적을 수가 없다.

 

나의 경우처럼, requirements.txt에 여러 라이브러리가 적혀 있는데 특정한 라이브러리만 특정한 url로부터 설치해야 하는 경우에는 다음과 같이 하면 된다.

1.  requirements.txt 내에는 해당 라이브러리의 이름 및 버전만 적는다.

2.  $ pip install -r requirements.txt로 실행하지 말고 $ pip install --index-url 특정URL주소 특정라이브러리명 으로 실행을 한다.

예를 들어, 나의 경우에는 $ pip install --index-url https://mirror.baidu.com/pypi/simple paddlepaddle 로 실행을 하면 된다. 그러면 paddlepaddle 라이브러리는 명시해준 url에서 설치가 되고 그외 나머지 라이브러리들은 PyPI에서 설치가 된다.

 

반응형