利用Anaconda3安装tensorflow/keras,并迁移虚拟环境至不能上网的电脑
下面记录下利用Anaconda安装tensorflow和keras,前前后后也踩了不少坑。并分别在windows系统和linux系统下将能上网的电脑下安装的tensorflow虚拟环境迁移至不能上网的环境下。
1、安装系统环境和安装包
centOS7
Anaconda3-5.1.0
TensorFlow 2.1.0
Keras 2.3.1
2、在能上外网的系统中安装anaconda/tensorflow/keras
2.1 先在能上外网电脑中安装anaconda
在linux系统下,我是用vmware装的centos7,注意每次重启前确认“服务”中与VMWare相关的服务处于开启状态。若在linux系统中,若安装anaconda时没有添加启动路径,需要自己手动添加启动路径:
vi /root/.bashrc
export PATH="/usr/bin/:$PATH:/root/training/anaconda3/bin:/root/training/anaconda3/condabin"
2.2 conda的一些常用命令
# 切换虚拟环境
source activate base # linux系统
activate base # windows系统
# 切换至普通环境:
source deactivate base # linux系统
deactivate base # windows系统
# 查看虚拟环境
conda info --envs
# 查看该虚拟环境下面所有的包
conda list
# 查看某一个包
conda list pkg_name
# 清除conda缓存
conda clean --all
# 创建虚拟环境
conda create -n env_name
# 复制虚拟环境base
conda create -n env_name --clone base
# 删除虚拟环境
conda remove -n env_name --all
# conda安装包, 相比于pip, 它检查兼容性更优,但下载速度或者下载源的问题,我基本没有成功过
conda install tensorflow==2.1.0
# conda升级包
condad upgrade pck_name
2.3 更改pip下载源:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 生成的配置文件路径:C:\Users\cheny\AppData\Roaming\pip\pip.ini
2.4 新建tensorflow虚拟环境
conda create -n tensorflow python=3.6
2.5 安装tensorflow和keras
这里推荐使用pip安装,网上很多使用conda安装,实际效果就是一致等待,我反正是没成功过。之前一直想先复制base虚拟环境,再在该环境上安装tensorflow,结果由于有的包需要升级,升级卸载时会报错(如wrap包),后面还不如重新从基础python装起。
# 版本号要与环境中的python版本兼容,且tensorflow版本要与keras版本兼容
pip install tensorflow==2.1.0
pip install keras==2.3.1
# 环境需要的其它包,版本号与虚拟环境base中一致,避免后续冲突
pip install pandas==0.22.0
pip install matplotlib==2.1.2
pip install scikit-learn==0.19.1
pip install scikit-image==0.13.1
pip install seaborn==0.8.1
2.6 tensorflow相关的网站
# anaconda清华镜像站
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
# anaconda官网:各版本介绍
https://docs.anaconda.com/free/anaconda/reference/packages/oldpkglists/
# Tensorflow和Keras版本对照及环境安装
https://blog.csdn.net/Strive_For_Future/article/details/126587222
3、虚拟环境复制迁移
3.1 将虚拟环境tensorflow从一台能上网的电脑迁移至另一台不能上网的服务器, 首先两台电脑先安装好同一种版本的Anaconda。
3.2 经过自己的踩坑经验,windows系统和linux系统下,虚拟环境迁移方法有所区别不同。在linux环境下,若采用官网(https://conda.github.io/conda-pack/)给出的方法,打包后,在目标机器解压,发现没有activate相关命令,直接跳过的话,导致最终会缺失很多包。后面发现网上很多是直接压缩,然后在迁移目标机器上对应目录下解压即可(不知道windows环境下是否可行,没测试)。
3.2.1 windows系统
1)在源电脑上,切换至base虚拟环境,安装conda-pack
conda install -c conda-forge conda-pack # conda-forge是下载源
2)打包迁移虚拟环境
(base) C:\Users\cheny>conda pack -n tensorflow
# 完成后在C:\Users\cheny目录下生成文件tensorflow.tar.gz
3)拷贝文件tensorflow.tar.gz至不能上网服务器
4)进入envs目录,新建目录tensorflow,并进行以下操作
# cmd进入envs目录
# 新建tensorflow目录
# 解压,注意这里不能用windows自带的解压软件
C:\software\Anaconda3\envs> tar -xzf tensorflow.tar.gz -C tensorflow
C:\software\Anaconda3\envs> cd tensorflow
# 激活环境
C:\software\Anaconda3\envs\tensorflow> .\Scripts\activate.bat
# 从激活环境中清除前缀
C:\software\Anaconda3\envs\tensorflow> .\Scripts\conda-unpack.exe
# 退出环境
C:\software\Anaconda3\envs\tensorflow> .\Scripts\deactivate.bat
3.2.2 linux系统
# 在anaconda3/envs/目录下压缩
tar -czvf tensorflow.tar.gz ./tensorflow
# 在迁移目标机器上解压
tar -xzvf tensorflow.tar.gz /root/software/anaconda3/envs/
- tensorflow Anaconda3 Anaconda 环境 电脑tensorflow anaconda3 anaconda环境 tensorflow2 tensorflow anaconda3 anaconda 变量anaconda3 anaconda环境 环境 机子anaconda anaconda3 tensorflow anaconda windows环境 anaconda3 anaconda3 anaconda python3 pytorch anaconda3 anaconda mac packages fastjsonschema site-packages anaconda3 anaconda3 anaconda ubuntu 23.04