在离线机器上创建Anaconda环境

932 阅读2分钟

1. 需求

用公司封装好的spark ml机器学习平台跑一段机器学习的数据总是有问题,想自己用tensorflow跑一下试试。但是数据不能下载,只好进入公司的内网虚拟机,但是这个内网虚拟机不让联网,pycharm无法创建Anaconda环境的工程。于是研究了一下离线安装Anaconda环境。网上有很多博客写过,但是有的对小白不友好,省略了很多细节,有的则是抄的,一楼百出。这里自己总结一下。

2. 在联网机器上创建好环境

假设有一台联网机器A和离线机器B。首先,在A机器上安装好pycharm和Anaconda,然后创建一个使用Anaconda环境的python工程,我创建的Anaconda环境就叫py27,你在离线环境需要使用什么包,都在A机器的这个py27里面安装好。
这里一定要在A机器上安装好需要的包,因为Anaconda默认是没有安装tensorflow这些的。安装需要联网,到了B机器上无法联网安装。
安装好后,在你的Anaconda安装目录,我的是C:\Program Files\Anaconda3,下面有一个envs文件夹,打开,里面有刚刚创建的py27,这是第一个文件夹,envs平级目录下还有一个pkgs文件夹,这是第二个文件夹。 image.png

3. 在离线机器上导入环境

复制pycharm和Anaconda安装包(必须与A机器的同一个版本)到B机器上,安装好,把上面两个文件夹中的第一个文件夹py27复制到A机器的任意位置(但不能是envs目录下,否则导入环境时会提示已存在),把第二个文件夹pkgs复制到Anaconda安装目录的相同位置处,打开Anaconda图形界面.
Environments —> base(root) -> Open Terminal Anaconda界面.png
会打开一个命令行对话框,输入
conda create -n py27 --clone E:\AnacondaOfflineEnvs\py27 --offline
其中py27就是你在A机器创建的Anaconda环境名字,E:\AnacondaOfflineEnvs\py27就是复制过来的py27文件夹地址,根据自己的实际情况改一下。

Anaconda导入成功.png
很多教程在这里会出现错误:
RunTimeError This command is using a remote connection in offline mode
就是因为上面的pkgs文件夹没有拷贝。
查看已经安装的环境:
conda info --env
查看导入成功的环境.png
激活和取消激活环境的命令
激活和取消激活环境.png
也可以通过Anaconda图形界面操作
Anaconda图形界面也可以操作.png

4. 另一种方法

网上搜到的另一种方法,我没有尝试:blog.csdn.net/qq_26430717…

5. 参考

  1. blog.csdn.net/FY_2018/art…
  2. blog.csdn.net/CREATOR_Jay…