본문 바로가기
프로그래밍(Programming)/아나콘다(Anaconda)

[아나콘다] 가상환경 복제 및 이동

by stevenkim_ 2024. 7. 21.

* 서버 A → 서버 B 의 상황이라고 가정하겠다.

 

1. [서버 A] 옮기고자 하는 가상 환경 실행

conda activate [가상환경 이름]

 

2-(1). [서버 A] 가상 환경 추출

  • environment.yml 이라는 파일이 동일 폴더에 생성된다. 하지만 지저분하다.
conda env export > environment.yml

 

2-(2). [서버 A] 가상 환경 추출 (더 정돈된 ver.)

  • 조금 더 정돈된 environment.yml 파일이 동일 폴더에 생성된다.
conda env export --no-builds | grep -v “prefix” > environment.yml

 

3. environment.yaml 전송

  • 환경을 옮기고 싶은 서버(서버B)로 environment.yml를 전송한다.
scp -P [포트 번호] [서버A username]@[서버A IP 주소]:[서버A에서 보낼 파일 경로] [서버B username]@[서버B IP 주소]:[서버B에서 받을 폴더 경로]

* 자세한 파일/폴더 전송 명령어 정보는 아래의 링크 참고

https://stevenkim1217.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-%EB%AA%85%EB%A0%B9%EC%96%B4-%EB%A1%9C%EC%BB%AC%EC%84%9C%EB%B2%84%EA%B0%84-%ED%8C%8C%EC%9D%BC-%EC%A0%84%EC%86%A1-scp

 

[리눅스 명령어] 로컬/서버간 파일 전송 (scp)

파일 및 폴더를 전송하는 scp 명령어는 기본적으로 아래의 구조를 가진다.scp [-조건] [출발] [도착]  로컬 → 서버파일 전송scp -P [포트 번호] [로컬에서 전송할 파일 경로] [서버 username]@[서버 IP 주

stevenkim1217.tistory.com

 

4. [서버 B] environment.yml의 name과 prefix 수정

  • 변경하고 싶은 가상환경의 이름(name)과 가상환경의 경로(prefix)로  environment.yml 파일을 수정한다.


5. [서버 B] 환경 생성

  • 최종적으로 아래의 명령어로 서버 B에 환경을 생성한다.
conda env create --file environment.yaml