生信学习笔记linux&github随笔-生活工作点滴

conda环境变量设置与转移

2019-08-04  本文已影响16人  dming1024

参考文章:https://www.cnblogs.com/liaohuiqiang/p/9380417.html

本文的初衷是对之前建立的snakemake conda环境在不同服务器上进行转移,首先从官方网站上下载的environment.yaml,并进行conda的安装与配置,建立本地snakemake分析环境;然后将本地snakemake分析环境进行导出保存为snakemake.yaml,可以在不同服务器上建立自己的snakemake分析环境,达到可移植效果。

查看自己安装的conda env

 conda env list
# conda environments:
#
rna                      /root/miniconda2/envs/rna
snakemake-tutorial       /root/miniconda2/envs/snakemake-tutorial
root                  *  /root/miniconda2

查看rna环境下安装的包(-n , 即--name,指环境的名称)

 conda list -n rna
# packages in environment at /root/miniconda2/envs/rna:
#
asn1crypto                0.24.0                py27_1003    conda-forge
backports                 1.0                        py_2    conda-forge
backports.functools_lru_cache 1.5                        py_1    conda-forge

更新指定环境下的包

conda update -n rna

进入conda环境

source activate snakemake-tutorial

退出conda环境

 source deactivate

导出conda 下snakemake的配置环境

#通用格式
conda env export -n 项目名 -f environment.yaml

#在env外导出
conda env export -n snakemake-tutorial > snakemake.yml

#在snakemake-tutorial 环境内导出
conda env export > snakemake.yaml

#查看snakemake.yaml文件
cat snakemake.yaml
name: snakemake
channels:
  - conda-forge
  - bioconda
  - defaults
dependencies:
  - _libgcc_mutex=0.1=main
  - asn1crypto=0.24.0=py35_3
  - bcftools=1.3.1=h84994c4_5
  - bcrypt=3.1.4=py35h14c3975_0
  - bwa=0.7.12=1

删除环境

conda remove -n snakemake-tutorial --all

Package plan for package removal in\
environment /root/miniconda2/envs/snakemake-tutorial:

The following packages will be REMOVED:

    asn1crypto:                0.24.0-py35_3          conda-forge
    bcftools:                  1.3.1-h84994c4_4       bioconda

根据导出的snakemake.yaml文件,新建环境

conda env list
# conda environments:
#
rna                      /root/miniconda2/envs/rna
root                  *  /root/miniconda2

#根据文件创建环境变量的通用格式
conda env create --name snakemake --file snakemake.yaml

#创建snakmake环境
conda env create -f snakemake.yaml
/root/miniconda2/lib/python2.7/site-\
ackages/conda_env/env.py:68: UnsafeLoaderWarning:\
The default 'Loader' for 'load(stream)' without further\
arguments can be unsafe.
Use 'load(stream, Loader=ruamel_yaml.Loader)' explicitly if that is OK.
Alternatively include the following in your code:

  import warnings
  warnings.simplefilter('ignore', ruamel_yaml.error.UnsafeLoaderWarning)

In most other cases you should consider using 'safe_load(stream)'
  data = yaml.load(yamlstr)
Fetching package metadata .................
Solving package specifications: .
zlib-1.2.11-h5 100% |##############################################################################################################################| Time: 0:00:00 345.02 kB/s
bcftools-1.3.1 100% |##############################################################################################################################| Time: 0:00:00 795.08 kB/s
pyasn1-0.4.6-p 100% |##############################################################################################################################| Time: 0:00:00   5.59 MB/s
dropbox-9.4.0- 100% |##############################################################################################################################| Time: 0:00:00   1.32 MB/s
#
# To activate this environment, use:
# > source activate snakemake
#
# To deactivate an active environment, use:
# > source deactivate
#

conda env list
# conda environments:
#
rna                      /root/miniconda2/envs/rna
snakemake                /root/miniconda2/envs/snakemake
root                  *  /root/miniconda2
上一篇下一篇

猜你喜欢

热点阅读