- 공유 링크 만들기
- X
- 이메일
- 기타 앱
1. 문제 원인 진단: 왜 pip가 느린가?
pip의 기본 패키지 저장소는 PyPI(Python Package Index)이며, 서버가 해외(주로 미국)에 위치합니다. 국내에서 접속 시 다음과 같은 병목이 발생합니다:
- 물리적 거리: 서버 RTT(Round Trip Time)가 200ms 이상 소요
- ISP 라우팅: 통신사별 해외 구간 대역폭 제한
- 패키지 용량: TensorFlow, PyTorch 등 대용량 라이브러리는 수 GB 전송 필요
이를 해결하려면 국내 CDN 또는 미러 서버를 사용해야 합니다. 카카오, 네이버 등이 공식 미러를 운영하고 있으며, 이를 pip 설정에 등록하면 모든 설치 작업이 자동으로 빠른 서버를 경유합니다.
2. 임시 해결: 명령어 옵션으로 미러 서버 지정
즉시 테스트하려면 --index-url 옵션을 사용합니다:
- 카카오 미러:
pip install --index-url https://mirror.kakao.com/pypi/simple 패키지명 - 네이버 미러:
pip install --index-url https://ftp.daumkakao.com/pypi/simple 패키지명
단, 이 방법은 매번 옵션을 입력해야 하므로 일회성 테스트 용도로만 권장합니다. 프로덕션 환경이나 반복 작업에는 다음 섹션의 영구 설정이 필수입니다.
3. 영구 해결: pip 설정 파일 수정 (권장)
pip 글로벌 설정을 변경하면 모든 설치 명령이 자동으로 미러 서버를 사용합니다.
3-1. 명령어 방식 (pip 10.0 이상)
터미널에서 다음 명령어를 실행하면 설정 파일이 자동 생성됩니다:
pip config set global.index-url https://mirror.kakao.com/pypi/simplepip config set global.trusted-host mirror.kakao.com
trusted-host 설정 이유: HTTPS 인증서 검증 우회. 일부 미러는 자체 서명 인증서를 사용하므로 이 옵션이 없으면 SSL 에러가 발생합니다.
3-2. 수동 파일 편집 (레거시 환경)
pip 버전이 낮거나 명령어 실패 시 직접 설정 파일을 생성합니다:
- Linux/macOS:
~/.pip/pip.conf - Windows:
%APPDATA%\pip\pip.ini
파일 내용:
[global] index-url = https://mirror.kakao.com/pypi/simple trusted-host = mirror.kakao.com
저장 후 pip config list 명령어로 적용 여부를 확인하십시오.
4. 검증 및 트러블슈팅
설정 완료 후 반드시 실제 패키지로 속도를 측정해야 합니다:
pip install requests --no-cache-dir -v실행 (캐시 무효화 + 상세 로그)- 로그에서 "Looking in indexes: https://mirror.kakao.com/pypi/simple" 문구 확인
- 다운로드 속도가 10MB/s 이상이면 정상 (기존 1MB/s 미만과 비교)
주의사항:
- 일부 사설 패키지는 미러에 없을 수 있습니다. 이 경우
--extra-index-url https://pypi.org/simple로 공식 저장소를 보조로 추가하십시오. - Docker 이미지 빌드 시에는 Dockerfile 내부에 pip.conf를 COPY하거나, RUN 명령어에 --index-url을 명시해야 합니다.
- CI/CD 파이프라인(GitHub Actions 등)에서는 환경변수
PIP_INDEX_URL로 설정하는 것이 관리 효율적입니다.
결론
pip 속도 문제는 미러 서버 설정으로 즉시 해결 가능하며, 카카오 미러 사용 시 평균 5배 이상 속도 개선을 확인할 수 있습니다. 임시 옵션보다는 pip config set 명령어로 글로벌 설정을 변경하는 것이 장기적으로 효율적입니다. 지금 당장 터미널을 열고 위 설정 명령어 2줄을 실행하십시오.
#함께 읽으면 좋은 글
Jupyter Notebook Dead Kernel 원인 분석과 메모리 초과 해결법 : 바로보기
댓글
댓글 쓰기