说明:尽量保证源机器(有网络)和目标机器(无网络)系统版本一致
1. 安装make和gcc(如果有可跳过)
1.1 安装make
# 先在源机器下载
yum install --downloadonly --downloaddir=/packages make
# 然后传输到目标机器安装
rpm -ivh *.rpm --force --nodeps
1.2 安装gcc
# 先在源机器下载
yum install --downloadonly --downloaddir=/packages gcc
# 然后传输到目标机器安装
rpm -ivh *.rpm --force --nodeps
2. 安装python3依赖包及其安装包
说明:在源机器和目标机器的相同目录下安装python3环境。
2.1 安装python3依赖包
# 先在源机器下载
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel epel-release gcc gcc-c++ xz-devel readline-devel gdbm-devel sqlite-devel tk-devel db4-devel libpcap-devel libffi-devel --downloadonly --downloaddir=/packages
# 然后传输到目标机器安装
rpm -ivh *.rpm --force --nodeps
2.2 安装python3安装包
# 下载python3安装包
wget --no-check-certificate https://www.python.org/ftp/python/3.6.4/ython-3.6.4.tgz
也可在https://www.python.org/ftp/python下载其他版本。
# 传输到目标机器开始安装
tar -zxvf Python-3.6.4.tgz
mkdir /usr/local/python3
cd Python-3.6.4
./configure --prefix=/usr/local/python3 # 将Python3安装在/usr/local/python3
make && make install # 编译安装
ln -s /usr/local/python3/bin/python3 /usr/bin/python3 # 创建python3软链接
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3 # 创建pip3软链接
安装完毕,可通过:
Python3 -V
pip3 -V
测试是否成功。
3. 开始迁移
3.1 方法一:迁移wheel文件
3.1.1 源主机中打包项目文件
若项目中创建虚拟环境,首先激活虚环境,然后进入项目文件,执行:
pip3 freeze > requirements.txt
将当前项目中的库列表生成并保存在requirements.txt中。
然后,通过pip生成批量离线安装包(whl文件):
pip3 wheel --wheel-dir=/tmp/wheel-packages -r requirements.txt
执行完毕之后,你会发现/tmp/packages中包含了项目所需的所有.whl, 然后打包上传到目标机器。
3.1.2 目标创建虚环境,并激活(python3 自带了venv)
python3 -m venv test_venv
cd test_venv
source bin/activate
pip3 install --no-index --find-links=/tmp/wheel-packages -r requirements.txt
安装完毕,可通过pip3 freeze
或者import
进行检验。
3.2 方法二:直接迁移整个venv环境
首先保证源机器和目标机器python3安装路径相同。然后在源机器配置好venv环境,然后拷贝到目标机器相同路径下即可使用。
最后,执行项目即可!