Anaconda
1. 가상 환경
conda create -n env_name [package name]
- yml 파일로 가상 환경 만들기
conda env create -f environment.yml
1) YAML Format Examlple
name: deeplearning
channels:
- defaults
- conda-forge
- ericmjl
dependencies:
- python=3.6
- matplotlib=2.0.2
- jupyter=1.0.0
- numpy=1.13.1
- seaborn=0.8
- pymc3=3.1
- pandas=0.20.3
- biopython=1.69
- rise=5.0.0
- environment_kernels=1.1
- scipy=0.19.1
2) How to make env file from conda
conda env export > environment.yml
- 다만 해당 파일의 마지막
prefix
부분은 가상 환경 파일이 설치되는 곳인데 이는 머신마다 다를 수 있으므로 확인할 필요가 있다.
3) This is NOT Cross-Platform Requirements File
- 그러나 아쉽게도
conda env export
를 하면 해당 platform에 맞는 패키지가 export가 된다. - 공식 문서에도 architecture는 Check하지 않는다고 나와있다. https://conda.io/docs/user-guide/tasks/manage-environments.html
- 따라서 mac에서 설정한 가상 환경이 그대로 ubuntu가 적용되지 않을 수 있다.
- 따라서 새로운 패키지를 설치할 때마다 Manual로 environment.yml 파일을 관리하는 것을 추천한다.
- build string 제거를 꼭 하자. build string은 특정 platform에 해당하는 것이기 때문이다.
4) 가상 환경에서만 쓰이는 환경 변수 만들기
- 참고: https://conda.io/docs/user-guide/tasks/manage-environments.html#saving-environment-variables
- 만약 콘다 가상환경 경로가 이거라면: $ANACONDA_HOME/envs/VIRTUAL-NAME
- 디렉토리/파일 생성
mkdir -p ./etc/conda/activate.d
mkdir -p ./etc/conda/deactivate.d
touch ./etc/conda/activated.d/env_vars.sh
touch ./etc/conda/deactivated.d/env_vars.sh
- 파일 수정
./etc/conda/activate.d/env_vars.sh
#!/bin/sh
export MY_KEY='secret-key-value'
export MY_FILE=/path/to/my/file/
./etc/conda/deactivate.d/env_vars.sh
#!/bin/sh
unset MY_KEY
unset MY_FILE
5) 가상 환경에 자동으로 들어가기(autoenv)
- How to install
$ pip install conda-autoenv
$ echo "source /anaconda3/bin/conda_autoenv.sh" >> ~/.bash_profile
- 여기서 conda_autoenv.sh 파일 경로는 각자 다를 수 있다.
- 따라서
which conda_autoenv.sh
명령어를 통해서 경로를 확인 후 작성한다.
- How to use
- prerequisite: environment.yml
- 가상 환경을 activate 시킨 후
conda env export > environment.yml
- 프로젝트 폴더에 들어가서 (environment.yml 파일이 있는 곳)
conda_autoenv
- TWEAKING
conda_autoenv
라는 이름도 길다.which conda_autoenv.sh
를 통해서 경로를 확인 후- 해당 script에서
conda_autoenv
함수 이름을 짧게 바꾼다. 예를 들어 autoenv - 또한 해당 script의 마지막 줄에
alias deactivate='source deactivate'
2. Jupyter Notebook Extensions
1) 설치방법
- jupyter contrib nbextensions
conda install -c conda-forge jupyter_contrib_nbextensions
or
git clone https://github.com/ipython-contrib/jupyter_contrib_nbextensions.git
pip install -e jupyter_contrib_nbextensions
- Install javascript and css files
jupyter contrib nbextension install --sys-prefix
여기서 서버의 모든 사용자 사용할 수 있도록 하기 위해--sys-prefix
를 사용하였다.
자세한 내용은 이 곳을 참고하면 된다.https://github.com/ipython-contrib/jupyter_contrib_nbextensions
- Enabling extensions
Jupyter Notebook의 Extensions Tab으로 이동해서 해당 extension을 체크만 해주면 된다.
2) Autopep8
conda install -c conda-forge autopep8
Extension Tab에서 Autopep8을 Enabling 해주면 Jupyter Notebook에서도 Autopep8을 사용할 수 있다.
3. 패키지 설치
1) 설치방법
conda install <package_name>
2) 설치 후
패키지를 설치할 때 다운받은 설치 파일은 Cache에 가 있다. 따라서 설치가 다 끝난 후 Cache를 비워주자.
conda clean --all
3) 설치된 패키지 확인
conda list
Example)
Package Name | Version | Build String | Channel |
---|---|---|---|
autopep8 | 1.3.3 | could be anything | conda-forge |