본문 바로가기
카테고리 없음

[Python] 가상환경 구축 anaconda 사용

by 쿡노트 2023. 11. 28.
반응형

리눅스 서버에 Python 3.6 버전이 설치되어 있는데, 새로운 테스트를 위해 Python 3.10 버전이 필요하여, 가상환경으로 구성한 내역을 기재한다. (Anaconda로 구성)

가상 환경이란?

여러 프로젝트별 파이썬 버전 & 파이썬 패키지 충돌을 피하기 위한 독립된 환경을 구축하는 것이다.
가상환경이 필요한 이유는 Python을 사용하면 파이썬 패키지들은 하나의 버전만 사용 가능 해서 여러 프로젝트를 수행할 경우 필요한 패키지가 다를 수 있고, 동일한 패키지의 요구되는 버전 또한 다를 수 있다.(프로젝트별 파이썬 버전도 상이할 수 있다.)

가상 환경 venu VS conda

Python에 내장 되어 있는 모듈인 venu (python 3.3 이상부터 사용 가능)와 Anaconda에서 제공하는 가상 환경(conda로 관리) 이 있다.  그 외에도 종류는 여러 가지 있다.(pipenv, pyenv, virtualenv)
참조로 venu는 파이썬만 설치하면 사용할 수 있어 편리하게 사용 가능한데, conda를 사용하는 이유는 conda의 여러 특징이 있겠지만 아래 두 개의 이유 때문에 좀 더 관리가 수월 한 것 같다.

 

1. conda는 Python 설치를 관리한다. (venu는 파이썬 설치 후 가상환경 구성 - 가상 환경 구성시 파이썬 버전은 선택 가능)
2. 가상 환경 구성된 디렉터리를 따로 기억할 필요가 없다. - 가상환경 디렉터리 조회 가능 (venu는 이동된 경로에 가상환경 디렉터리 생성하고, 별도로 조회 기능은 없는 것 같다.)

Anaconda는 나무위키에 따르면 과학 연구 및 머신러닝 분야에 적합한 Python 및 R 언어의 패키지 / 의존성 관리 및 배포를 편리하게 해주는 조건부 무료 오픈 소스 패키지 관리자 라고 한다.

Anaconda 설치 여부 확인 (버전 확인 되면, 설치 과정 생략 가능)

$ conda -V  (or conda --version)
conda 23.7.4

Anaconda 설치

Anaconda 다운로드 URL

https://www.anaconda.com/download

 

Free Download | Anaconda

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

www.anaconda.com

다운로드 페이지에서 Get Additional Installers -> Anaconda Installers 페이지로 이동한다.
OS에 맞게 설치 프로그램 링크 주소를 복사한다. (리눅스 서버에 다운로드하여 설치)

Anaconda 다운로드 (약 1GB 스크립트 다운된다.) 

$ wget https://repo.anaconda.com/archive/Anaconda3-2023.09-0-Linux-x86_64.sh
Anaconda3-2023.09-0-Linux-x86_64.sh

Anaconda 설치 

$ bash Anaconda3-2023.09-0-Linux-x86_64.sh

Anaconda 설치 과정

--라이선스 확인 
In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>> 엔터입력

--라이선스 동의
Do you accept the license terms? [yes|no]
[no] >>> yes

--설치 경로 설정
[home/testuser/anaconda3] >>> /data/anaconda3


--.bashrc 설정? (yes로 입력하게 되면, 'conda init' 을 수행한 것과 같이 .bashrc 에 적용된다.)
You can undo this by running `conda init --reverse $SHELL`? [yes|no]
[no] >>> yes
no change     /data/anaconda3/condabin/conda
no change     /data/anaconda3/bin/conda
no change     /data/anaconda3/bin/conda-env
no change     /data/anaconda3/bin/activate
no change     /data/anaconda3/bin/deactivate
no change     /data/anaconda3/etc/profile.d/conda.sh
no change     /data/anaconda3/etc/fish/conf.d/conda.fish
no change     /data/anaconda3/shell/condabin/Conda.psm1
no change     /data/anaconda3/shell/condabin/conda-hook.ps1
no change     /data/anaconda3/lib/python3.11/site-packages/xontrib/conda.xsh
no change     /data/anaconda3/etc/profile.d/conda.csh
modified      /home/testuser/.bashrc


--.bashrc 자동 적용 내역
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/data/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/data/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/data/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/data/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<

가상환경 목록 중 (base) 자동 활성화 해제

(base) [test@anaconda3]$
(base) [test@anaconda3]$ conda config --set auto_activate_base false
**ssh 재접속 후 (base) 비활성화 확인된다.
[test@anaconda3]$ 

conda 사용 명령어

--conda 버전 확인
$ conda -V
conda 23.7.4

 

--파이썬 버전 확인

$ python3 -V (or python3 --version)

 

--가상환경 목록 조회 (가상환경 디렉터리 확인 가능)

$ conda env list

$ conda info --env

# conda environments:
#
base                     /data/anaconda3

testenv                 /data/anaconda3/envs/testenv

--가상환경 생성과 동시에 python 버전 설정 (testenv 생성된다.)
conda create -n [name] python=[version]
ex) $ conda create -n testenv python=3.10

 

--가상환경 접근 & 나오기
$ conda activate testenv
$ conda deactivate

 

--가상환경에 설치된 Python 패키지 목록 조회 (pip)

$ pip list

(testenv) [test@anaconda3]$ pip list
Package    Version
---------- -------
pip        23.3.1
setuptools 68.0.0
wheel      0.41.2

conda 삭제

1. conda clean

$ conda clean  -a

**conda 옵션

clean             Remove unused packages and caches.
**conda clean 옵션
  -a, --all             Remove index cache, lock files, unused cache packages, tarballs, and logfiles.

2. 설치 디렉터리 삭제
$ rm -rf anaconda3

 

3. .bachrc 내용 제거

 

감사합니다.

반응형