Linux 上搭建 Anaconda, 远程访问 juypter

1 什么是 Anaconda

Anaconda 能让你轻松安装在数据科学工作中经常使用的包。你还将使用它创建虚拟环境,以便更轻松地处理多个项目。Anaconda 简化了我的工作流程,并且解决了我在处理包和多个 Python 版本时遇到的大量问题。

Anaconda 实际上是一个软件发行版,它附带了 conda、Python 和 150 多个科学包及其依赖项。应用程序 conda 是包和环境管理器。Anaconda 的下载文件比较大(约 500 MB),因为它附带了 Python 中最常用的数据科学包。如果只需要某些包,或者需要节省带宽或存储空间,也可以使用 Miniconda 这个较小的发行版(仅包含 conda 和 Python)。你仍可以使用 conda 来安装任何可用的包,它只是没有附带这些包而已。

除了管理包之外,conda 还是虚拟环境管理器。它类似于另外两个很流行的环境管理器,即 virtualenv 和 pyenv

环境能让你分隔你要用于不同项目的包。你常常要使用依赖于某个库的不同版本的代码。例如,你的代码可能使用了 Numpy 中的新功能,或者使用了已删除的旧功能。实际上,不可能同时安装两个 Numpy 版本。你要做的应该是,为每个 Numpy 版本创建一个环境,然后在适用于项目的环境中工作。

在应对 Python 2 和 Python 3 时,此问题也会常常发生。你可能会使用在 Python 3 中不能运行的旧代码,以及在 Python 2 中不能运行的新代码。同时安装两个版本可能会造成许多混乱和错误。而创建独立的环境会好很多。

也可以将环境中的包的列表导出为文件,然后将该文件与代码包括在一起。这能让其他人轻松加载代码的所有依赖项。pip 提供了类似的功能,即

1
pip freeze > requirements.txt。

2 为什么使用 conda 而不是 virtualenv?

14937979458924.jpg-832.6kB

3 安装过程

1 下载 ,上传到机器

你也可以在机器 wget

1
https://repo.continuum.io/archive/Anaconda2-4.3.1-Linux-x86_64.sh

2 安装

1
sh Anaconda2-4.3.1-Linux-x86_64.sh

选择安装目录。为了节约 根目录空间,安装在

1
2
# 目录事先必须不存在
/data/min.zhu/anaconda2

14937997286423.jpg-166kB

下面

source 一下 .bashrc

1
source ~/.bashrc

3 设置国内Anaconda源

1
2
3
4
# 添加Anaconda的TUNA镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# TUNA的help中镜像地址加有引号,需要去掉# 设置搜索时显示通道地址
conda config --set show_channel_urls yes

4 安装需要的环境

比如安装 3.5 的python

1
conda create -n lr3 python=3.5

激活

1
source activate lr3

之后进入虚拟环境

14927645672574.jpg-153.7kB

可以在通过 conda 进行包的管理

1
conda install xxx

5 修改 pip 源为阿里源

因为有些包点评直接就没有 比如 tflearntensorflow

1
2
3
vim ~/.pip/pip.conf
trusted-host=mirrors.aliyun.com
index-url=http://mirrors.aliyun.com/pypi/simple/

6 远程juypter 访问

首先,不建议使用root , 当你使用 root 的时候,需要使用如下方法。

1
jupyter notebook --allow-root

第二,远程服务器访问需要做一些配置

可以参考如下文章

1
http://blog.leanote.com/post/jevonswang/远程访问jupyter-notebook

进行配置

4 管理环境

如果你安装了多个环境,但是不记得名字,或者想修改的话,通过 conda-env 这个命令就可以看到你所有的环境了。 可以看到附带所有操作
14931020058855.jpg-188.6kB

比如 conda-env list 就是查看所有命令的格式

朱老师&敏哥 wechat
有惊喜,朋友🙄
我要拿铁不加糖.