::: IT인터넷 :::

Nexus3를 이용한 Conda 사설 저장소 구축

곰탱이푸우 2021. 6. 20. 08:20

Conda 저장소는 데이터 과학과 머신러닝, 딥러닝에 주로 사용하는 아나콘다 패키지의 공식 저장소이다.

Nexus3를 이용한 Conda 사설 저장소 구축은 1개 저장소만 필요하다.

  • proxy (Remote) - 외부의 Conda 저장소의 패키지를 저장하고 내부 사용자에게 전달한다. 캐시 (Cache) 역할이다.

 

그림으로 표현하면 다음과 같다.

 

 

참고로 Conda 저장소는 proxy만 제공하고 hosted와 group은 제공하지 않는다.

  • Conda에서 conda 가상환경 설정을 제외하면 대부분 pip를 많이 사용한다.
  • 직접 생성한 파이썬 패키지는 pypi 저장소(hosted, 내부 저장소)를 통해 배포하면 된다.

 

 

blob store 생성

Conda를 통해 공유되는 패키지 파일들을 저장할 공간을 설정한다.

Create blob store 버튼을 클릭한다.

 

 

사용할 저장 공간을 생성한다.

  • Type - File을 선택한다.
  • Name - conda은 아나콘다 패키지 저장소를 나타내는 prefix, 뒤에 repos는 어떤 용도인지 나타내는 postfix이다.
  • Enable Soft Quota는 저장 공간의 용량을 제한할 때 사용한다.
  • Path - 파일이 저장되는 실제 경로이다. Name에 입력한 내용으로 자동 생성된다.

 

 

Name은 헷갈리지 않는 선에서 자유롭게 작성 가능하다.

 

 

Conda Repository 생성

blob store 생성이 완료되면 저장소 (Repository)를 생성한다.

Create repository 버튼을 클릭한다.

 

 

생성할 저장소 타입을 선택한다.

conda는 proxy (remote)만 생성 가능하고, hosted (local)과 group (repos)은 지원하지 않는다. (선택권이 없다.)

 

 

proxy (remote)

conda (proxy)를 선택하여 proxy 저장소를 생성한다. 외부 저장소를 연결할 때 사용한다.

  • Name - 저장소 이름을 설정한다. Blob store와 동일한 이름을 사용한다.
  • Remote storage - 외부 저장소 경로 (URL)를 입력한다. 공식 아나콘다 패키지 저장소인 https://repo.anaconda.com/pkgs/main/을 지정한다.
  • Use the Nexus truststore - 외부 저장소 경로가 HTTPS인 경우 해당 인증서를 신뢰할지 설정한다. View certificate를 클릭하고 Accept도 적용한다.
  • Blob store - 기존에 생성한 저장소를 선택한다. proxy (Remote) 저장소이므로 conda-repos를 선택한다.

 

 

 

Conda 클라이언트 설정

설정한 저장소가 잘 동작하는지 확인하기 위해 conda 명령으로 Nexus3 저장소를 사용한다.

 

conda 명령을 사용하기 위해서는 먼저 아나콘다 (Anaconda)를 설치해야 한다.

다음 사이트를 참고하여 설치 파일 다운로드와 설치를 진행한다.

 

Anaconda | Individual Edition

Anaconda's open-source Individual Edition is the easiest way to perform Python/R data science and machine learning on a single machine.

www.anaconda.com

 

리눅스

사용자 계정의 홈 경로에 .conda rc  파일을 생성한다. /home/your_account/.condarc 경로이다.

사용자 계정의 경로이므로 sudo는 없어도 된다.

 

 

.conda rc  파일의 내용을 작성 (또는 수정)한다.

channles: 키를 명시하고 설정한 사설 저장소의 경로를 입력한다.

 

 

conda config --show 명령으로 아나콘다 (Anaconda)의 설정 정보를 확인한다.

channels 옵션에 설정한 사설 저장소 경로를 확인할 수 있다.

 

 

conda update conda 명령으로 아나콘다 (Anaconda) 패키지들을 업데이트 한다.

각 패키지들을 설정한 사설 저장소에서 정상적으로 찾는 것을 알 수 있다.

 

 

 

물론 다운로드와 설치도 정상적으로 진행된다.

 

 

실제 conda-repos 저장소를 확인해보면 다운로드한 상당히 많은 수의 패키지가 저장 된 것을 확인할 수 있다.

 

 

윈도우

C:\Users\your_account 경로에 .condarc 파일을 생성 (수정)한다.

 

 

만약 .condarc 파일의 channels: 에 defaults가 있으면 삭제하고 설정한 사설 저장소 경로를 입력한다.

 

 

.condarc 파일 생성 이후 과정은 리눅스와 동일하다.

 

conda 사설 저장소 설정이 완료되었다.

클릭 몇 번으로 사설 저장소를 설정 할 수 있고, proxy (remote) 저장소만 설정하므로 더욱 간단하다.