오뚝이개발자

아나콘다 환경 복사하기(export, clone, Anaconda) 본문

AI/AI 개발

아나콘다 환경 복사하기(export, clone, Anaconda)

땅어 2022. 8. 16. 15:16
728x90
300x250

 

 

아나콘다(Anaconda)를 사용하다보면 같은 환경을 다른 머신에서도 사용하고 싶거나, 같은 머신에서 비슷한 환경을 복제한 뒤 이런저런 패키지를 추가, 삭제하여 사용하고 싶은 경우가 있다. 이를 위한 기능이 콘다에 있다. 즉, 일일히 패키지를 설치하지 않아도 된다.

 

Step #1 : Conda env를 yaml 파일로 export 하기


아래와 같이 자신이 복제하고자 하는 콘다 가상환경을 activation 시킨 뒤 conda env export 명령어를 사용해서 해당 콘다 환경을 yaml 파일로 저장해주면 된다.

conda activate myconda	# 만약 가상환경 이름이 myconda라면
conda env export > myconda.yaml

두번 째 명령어를 실행하면 yaml 파일에 자신의 콘다 가상환경에 대한 정보가 저장되는데 해당 yaml 파일을 열어보면 name 키의 값은 가상환경의 이름, dependecies 키의 값은 설치될 여러 패키지들이 버전과 함께 쓰여져 있다.

새로 생성되는 가상환경의 이름은 name 키의 값으로 만들어지므로 만약 본인이 같은 머신 내에서 환경을 복사하고자 하는 것이라면 이 name 키의 값을 바꾸어 중복이 되지 않게 해주어야 한다.(다른 머신이라면 애초에 문제가 없으니 건너 뛰어도 된다.)

또한 prefix 키에는 가상환경이 설치될 디렉토리가 값으로 쓰여져 있는데 name을 바꾼 뒤 prefix의 값도 바꾸어줘야 한다.

다른 머신에 콘다 환경을 설치하고자 하는 거라면 바로 이 yaml 파일을 해당 머신으로 전송한 뒤 위의 명령어로 설치해주면 된다.

 

Step #2 : yaml 파일로 콘다 환경 생성하기


conda env create -f myconda.yaml
conda activate myconda

 

콘다 가상환경을 생성할 때 -f 옵션을 주고 그 뒤에 yaml 파일 경로를 입력하면 해당 파일을 기반으로 가상환경을 만들어준다. 가상환경을 생성할 때 pip 명령어로 설치가 불가능한 패키지들이 있다면(혹은 다른 이유로든 설치가 불가능한 패키지가 있다면) 해당 패키지까지만 설치가 진행되고 가상환경이 생성된다. 따라서 설치를 진행하는 도중 커맨드 창을 잘 확인하고 문제가 되는 패키지들을 적절히 지우거나 주석처리를 해주고 재설치를 해주어야 한다.

콘다 환경 삭제는 아래의 커맨드로 해주면 된다.

conda env remove -n myconda

 

Step #3 : 같은 머신 내에서 콘다 환경 복사


위의 방법들은 다른 머신에서 콘다 환경을 복사하는 경우에 사용 가능하다. 사실 같은 머신 내에서 콘다 환경을 복사하는 것은 훨씬 간단하다. 

conda create -n myconda_copy --clone myconda

콘다에선 위와 같이 --clone 옵션을 제공한다. -n 뒤엔 새롭게 복사할 환경의 이름을, --clone 옵션 뒤엔 복사할 대상이 되는 기존 환경의 이름을 써주면 된다.

 

 

참고 : https://jh-bk.tistory.com/35

 

 

 

728x90
300x250
Comments