Conda 常用命令
Contents
简介
通常在项目开发中,不同项目有不同的环境要求,配置这些环境会花大量的时间。Conda就是为了解决这一问题而生。其他解决方案还有 docker,虚拟化程度更高,但使用成本也会提升。
Conda是一个开源软件包管理和环境管理系统。 Conda可快速安装、运行和升级软件包及其依赖包。 Conda可在本地计算机上轻松地进行创建、保存、加载和切换环境。
注:Conda 在创建环境时候较慢,用mamba可以更快创建环境。
安装 conda
通常安装 miniconda 即可。参考 https://docs.anaconda.com/free/miniconda/miniconda-install/。
环境操作
mamba 从文件创建环境
mamba env create --prefix flame-dsr-env --file environment.yml # crete a local environment
mamba env create -n flame-dsr-env --file environment.yml # crete a global environment 创建环境
$ conda create --name python36-env python=3.6 pip=20.0激活环境
$ conda activate basic-scipy-env关闭环境
(basic-scipy-env) $ conda deactivate在当前目录下创建并激活环境
$ conda create --prefix ./env ipython=7.13 matplotlib=3.1 pandas=1.0 python=3.6
$ conda activate ./env列出已有环境
$ conda env list删除环境
$ conda remove --name my-first-conda-env --all
$ conda remove --prefix /path/to/conda-env/ --all包操作
搜索包/检查包版本
$ conda search scikit-learn
$ conda search -f libgcc安装包
(basic-scipy-env) $ conda install scikit-learn=0.22使用 pip 在 conda 环境中安装包
(basic-scipy-env) $ pip install pandas列出环境中的包
$ conda list --name basic-conda-env
$ conda list --prefix /path/to/conda-env分享环境
创建 environment.yml 文件
示例 environment.yml 文件:
name: machine-learning-env
dependencies:
- ipython
- matplotlib
- pandas
- pip
- python
- scikit-learn- 如果要用于在当前目录下创建./env 文件夹,需要将 name 的值设为 null。
使用 environment.yml 文件
- 通过 environment.yml 文件来对环境做版本控制,如将其添加到 git 中。
$ cd project-dir
$ conda env create --prefix ./env --file environment.yml
$ conda activate ./env导出当前环境
$ conda env export --name machine-learning-env --no-builds更新环境:
$ conda env update --prefix ./env --file environment.yml --prune重新创建环境:
$ conda env create --prefix ./env --file environment.yml --forceJupyter 与 Conda 环境的同步
JupyterLab 和 Jupyter Notebooks 会默认确保 IPython kernel 可用。但如果有使用某一版本的 IPython kernel,则需要在 environment.yml 文件中添加相应的信息。
name: xgboost-env
dependencies:
- ipykernel=5.3
- ipython=7.13
- matplotlib=3.1
- pandas=1.0
- pip=20.0
- python=3.6
- scikit-learn=0.22
- xgboost=1.0Conda 安装源 (channels)
命令行中使用
$ conda install scipy=1.3 --channel conda-forge --name my-first-conda-env添加其他 channel
命令行添加
$ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
$ conda config --set show_channel_urls yesenvironment.yml 文件中添加
dependencies:
- chanelname::modulename=X.Y.Z无法找到源,使用 pip 安装
在 channel 中都没找到时,可以使用 pip 安装。
name: null
dependencies:
- jupyterlab=1.0
- matplotlib=3.1
- pandas=0.24
- scikit-learn=0.21
- pip=19.1
- pip:
- kaggle=1.5
- yellowbrick=0.9
Xiaopeng Xu