[Python] Anaconda 설치, 환경 생성 / 삭제 / 확인, 활성화 / 비활성화

2022. 3. 14. 10:04Python

반응형

맥북, 맥미니 등 M1환경에서는   python -m venv  명령어를 통한 가상 환경 사용이 불가능한 상황이라 아나콘다 (Mini Conda)의 설치 및 사용이 필요한 상황이다.

윈도우 환경에서도 협업의 과정에서 환경 설정 파일을 공유하여 협업 환경을 만들 가능성도 있기 때문에, 개발 환경의 통일을 위해서라도 conda사용법을 알고 있는 것이 좋을 것이다.

사실 python 개발 시작을 m1 맥북에서 시작해서 conda를 사용하는 것과 pypi만 사용하는 것의 차이점이나 장단점을 느껴보지는 못했습니다.

0. env란? viture env를 쓰는 이유?

env란?

env는 유닉스 및 유닉스 계열 운영 체제용 셸 명령어이다. 환경 변수의 목록을 출력하거나, 현존하는 환경을 수정하지 않고도 변경된 환경 내에서 다른 유틸리티를 실행하는데 사용할 수 있다.

 

env를 사용함으로써 변수를 추가하거나 제거할 수 있으며, 기존 변수는 새로운 값을 이들에 할당함으로써 변경할 수 있다. 실제로 env는 다른 용도로 사용되기도 한다. 올바른 인터프리터를 실행하기 위해 셸 스크립트에 자주 쓰인다. 이렇게 사용할 경우 환경은 일반적으로 변경되지 않는다.

viture env를 사용하는 이유

실 서버의 환경이나 기존 개발 환경에 따라 여러가지 프로젝트가 각각 다른 환경에서 실행되는 경우가 있습니다. A 프로젝트는 파이썬 3.5를 사용하고, B 프로젝트는 파이썬 3.9를 사용할 수도 있지요. 하지만 매번 프로젝트마다 환경을 새롭게 만들고 그에 맞는 패키지를 새로 설치하는 것은 매우 비효율적인 방법입니다. 그래서 가상환경을 만들고 그 환경 안에서 프로그램을 실행할 수 있는 가상 환경 시스템이 나오게 된 것입니다.

1. 설치

  • 공식 홈페이지에서 다운로드 및 설치
  • 아나콘다의 경우 모든 패키지가 포함된 버전이라고 생각하면 되고 미니 콘다의 경우 최소한의 필요 패키지가 포함되어있다
  • 상황에 따라 다르지만 미니 콘다로 설치하여 필요한 패키지를 그때그때 설치하여 사용하는 것이 좋아 보인다

https://www.anaconda.com/products/individual

 

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

2. 설치 확인

  •  conda --version  명령어를 통해 버전을 확인한다
$ conda --version
conda 4.11.0

3. 실행환경 설정

$ conda create -n {실행환경명} python={파이썬 버젼}

ex) 실행 예제

  • python은 3.10 버전을 사용하는 cenv310이라는 실행환경을 만들면 다음과 같이 결과가 나오게 된다.
  • 실행환경의 저장 경로는 : environment location: /opt/miniconda3/envs/cenv310 
$ conda create -n cenv310 python=3.10

Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##
  environment location: /opt/miniconda3/envs/cenv310

  added / updated specs:
    - python=3.10


The following NEW packages will be INSTALLED:

  bzip2              pkgs/main/osx-64::bzip2-1.0.8-h1de35cc_0
  ca-certificates    pkgs/main/osx-64::ca-certificates-2021.10.26-hecd8cb5_2
  certifi            pkgs/main/noarch::certifi-2020.6.20-pyhd3eb1b0_3
  libcxx             pkgs/main/osx-64::libcxx-12.0.0-h2f01273_0
  libffi             pkgs/main/osx-64::libffi-3.3-hb1e8313_2
  ncurses            pkgs/main/osx-64::ncurses-6.3-hca72f7f_2
  openssl            pkgs/main/osx-64::openssl-1.1.1m-hca72f7f_0
  pip                pkgs/main/osx-64::pip-21.2.4-py310hecd8cb5_0
  python             pkgs/main/osx-64::python-3.10.0-hdfd78df_3
  readline           pkgs/main/osx-64::readline-8.1.2-hca72f7f_1
  setuptools         pkgs/main/osx-64::setuptools-58.0.4-py310hecd8cb5_0
  sqlite             pkgs/main/osx-64::sqlite-3.37.2-h707629a_0
  tk                 pkgs/main/osx-64::tk-8.6.11-h7bc2e8c_0
  tzdata             pkgs/main/noarch::tzdata-2021e-hda174b7_0
  wheel              pkgs/main/noarch::wheel-0.37.1-pyhd3eb1b0_0
  xz                 pkgs/main/osx-64::xz-5.2.5-h1de35cc_0
  zlib               pkgs/main/osx-64::zlib-1.2.11-h4dc903c_4
  
  Proceed ([y]/n)? Y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate cenv310
#
# To deactivate an active environment, use
#
#     $ conda deactivate

4. 실행 환경 리스트 확인하기

  • conda env list 명령어를 통해 컴퓨터 내에 생성된 환경들을 확인할 수 있다
  • 해당 명령어로 실행환경을 확인하고 여러 환경을 옮겨가며 프로젝트 작업이 가능하다
  • 테스트가 아닌 프로젝트를 진행할 때는 프로젝트명과 가상 환경명을 맞춰 작업해야 혼돈이 적을 것으로 생각이 된다
$ conda env list
# conda environments:
#
                         /Users/minkyuseo/miniconda
base                  *  /opt/miniconda3
cenv310                  /opt/miniconda3/envs/cenv310

5. 실행 환경 활성화시키기 (Base)

  • conda activate 명령어를 이용하여 가상 환경을 실행한다
  • 가상 환경이 정상적으로 실행되면 OS환경에 따라 표시방법은 다르지만 현재 환경설정에 대한 정보다 표시된다
$ conda activate

5-1. 윈도우 환경

  • 경로 앞부분에 (환경명)
(base) c:\User\xxx

5-2. 맥 환경

  • 명령어 줄 끝에 환경명이 나온다

6. 실행 환경을 지정하여 활성화시키기

  • conda activate {환경명} 명령어를 이용하여 가상 환경을 실행한다
$ conda acrivate cenv310

7. 실행 환경 비활성화

  • conda deactivate 명령어를 이용하여 가상 환경을 비활성화시킨다
  • 비활성화되면 각 OS에 표기되었던 환경명이 사라진다
$ conda deactivate

8. 실행 환경 삭제

  • conda env remove -n {실행 환경 명} 명령어를 이용하여 실행환경을 삭제한다
$ conda env remove -n condatest

Remove all packages in environment /opt/miniconda3/envs/condatest:

8-1. 실행중인 환경의 삭제

  • 실행 중인 실행환경을 삭제하려면 deactivate 명령어를 통해 비활성화를 진행하고 삭제한다
  • 실행 중인 실행환경을 삭제하면 다음과 같은 에러가 발생한다
$ conda env remove -n test

CondaEnvironmentError: cannot remove current environment. deactivate and run conda remove again

 

 

[Python] Anaconda 패키지 리스트, 검색, 설치, 삭제

현재 activate된 환경에 설치된 패키지 목록 확인하기 $ conda list 환경명을 지정하여 설치된 패키지 목록 확인하기 $ conda list -n {환경명} 패키지 검색 conda search 명령어를 통해 패키지를 검색 가능 검

advdev.tistory.com

 
반응형