본문 바로가기
IT/Data Analysis

[python 라이브러리 세팅] 내부망에 넣을 라이브러리 준비 (2) - python라이브러리 .whl 파일로 준비하기

by 한동두 2025. 12. 15.
반응형

환경

os: Linux, CentOS7

python: 3.6.8

(이전 내용 : https://dongdu-blog.tistory.com/71)

 

[python 라이브러리 세팅] 내부망에 넣을 라이브러리 준비 (1) - python 3.6.8 설치

환경os: Linux, CentOS7python: 3.6.81. VM 준비내부망에 넣을 라이브러리를 준비하기 위해 VM을 설치한다.vm 설치 및 os설치는 아래 링크를 참고하여 준비한다.(ISO준비 : https://dongdu-blog.tistory.com/57 )(vm 설치

dongdu-blog.tistory.com

 


1. 필요한 python 라이브러리 준비, 폴더 준비

내부망에 넣고싶은 python 라이브러리를 준비해주자.

python 버전에 따라 지원하는 라이브러리 버전이 다른 경우 의존성 문제가 생길 수 있기 때문에 버전에 민감한 라이브러리의 경우 버전까지 구체적으로 준비해주는 것이 좋다.

 

나는 제일 기본적인 pandas와 numpy를 준비하겠다.

pandas 1.1.5

numpy 1.19.5

(pandas나 numpy는 버전에 민감한 편은 아니기 때문에 따로 버전을 안 적어줘도 알아서 잘 최신버전으로 가져온다.)

 

그리고 나는 패키지 별 구분이 되도록 라이브러리마다 폴더를 하나씩 만들어주고 시작했다.

/home/[user명]/preparePkg/라이브러리명

이런식으로 사용하기 편하게 폴더를 마련해주자.

 

2. whl파일로 패키지 다운로드

보통 서버나 로컬에 파이썬 라이브러리를 준비할 때 주로 "pip install 패키지명"으로 자주 쓴다.

하지만 이 경우에는 라이브러리를 설치하는 명령어이기 때문에 설치파일 없이 바로  /usr/lib/python3.6/site-packages와 같은 위치에 바로 설치가 된다.

우리가 갖고싶은건 내부망에 설치할 수 있게 해주는 설치파일이므로

pip download 명령어를 이용할 것이다.

# 명령어 사용 방법
pip3 download [패키지명]==[버전] -d [패키지 파일 저장위치]

# pip3 download 명령어
[root@localhost pandas]# pip3 download pandas==1.1.5 -d /home/hjs/preparePkg/pandas


# 명령어 실행 로그
Collecting pandas==1.1.5
  Downloading https://files.pythonhosted.org/packages/c3/e2/00cacecafbab071c787019f00ad84ca3185952f6bb9bca9550ed83870d4d/pandas-1.1.5-cp36-cp36m-manylinux1_x86_64.whl (9.5MB)
    100% |████████████████████████████████| 9.5MB 57kB/s 
  Saved /home/hjs/preparePkg/pandas-1.1.5-cp36-cp36m-manylinux1_x86_64.whl
Collecting python-dateutil>=2.7.3 (from pandas==1.1.5)
  Downloading https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229kB)
    100% |████████████████████████████████| 235kB 1.4MB/s 
  Saved /home/hjs/preparePkg/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
Collecting pytz>=2017.2 (from pandas==1.1.5)
  Downloading https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl (509kB)
    100% |████████████████████████████████| 512kB 1.0MB/s 
  Saved /home/hjs/preparePkg/pytz-2025.2-py2.py3-none-any.whl
Collecting numpy>=1.15.4 (from pandas==1.1.5)
  Downloading https://files.pythonhosted.org/packages/45/b2/6c7545bb7a38754d63048c7696804a0d947328125d81bf12beaa692c3ae3/numpy-1.19.5-cp36-cp36m-manylinux1_x86_64.whl (13.4MB)
    100% |████████████████████████████████| 13.4MB 44kB/s 
  Saved /home/hjs/preparePkg/numpy-1.19.5-cp36-cp36m-manylinux1_x86_64.whl
Collecting six>=1.5 (from python-dateutil>=2.7.3->pandas==1.1.5)
  Downloading https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl
  Saved /home/hjs/preparePkg/six-1.17.0-py2.py3-none-any.whl
Successfully downloaded pandas python-dateutil pytz numpy six

적어둔 명령어 사용 방법을 참고하여 실행한다.

 

[root@localhost ~]# cd /home/hjs/preparePkg/pandas
[root@localhost pandas]# ll
total 23112
-rw-rw-r--. 1 root root 13391355 Dec 14 17:34 numpy-1.19.5-cp36-cp36m-manylinux1_x86_64.whl
-rw-rw-r--. 1 root root  9513189 Dec 14 17:34 pandas-1.1.5-cp36-cp36m-manylinux1_x86_64.whl
-rw-rw-r--. 1 root root   229892 Dec 14 17:34 python_dateutil-2.9.0.post0-py2.py3-none-any.whl
-rw-rw-r--. 1 root root   509225 Dec 14 17:34 pytz-2025.2-py2.py3-none-any.whl
-rw-rw-r--. 1 root root    11050 Dec 14 17:34 six-1.17.0-py2.py3-none-any.whl

이런식으로 whl파일들을 확인할 수 있다.

필요한 패키지마다 이런식으로 준비하면 된다.

 

 

다음 글에는 

vm에서 준비한 .whl파일을 로컬로 옮겨서 usb에 담을 수 있게 준비하고

내부망에서 어떤방법으로 설치하면되는지 설명하도록 하겠다.

반응형