创建python虚拟环境并打包python文件

前言

当需要为一个离线环境部署python应用时,离线环境可能缺少各种python环境,有docker的话可以用docker,没有docker可以用pyinstaller打包成二进制文件。pyinstaller会打包当前所有用pip安装的包,所以建议在虚拟环境中打包python应用。

  • 系统版本:centos 7
  • python版本:3.6

步骤

  1. 安装virtualenv
pip3 install virtualenv
  1. 创建虚拟环境
virtualenv myvenv
  1. 激活虚拟环境
cd myvenv
source ./bin/activate
  1. 下载依赖(在虚拟环境使用pip时会引用宿主机的pip.conf文件,因此建议宿主机先设置好或内pip源,加快下载)
pip3 install pandas pyinstaller pymysql
  1. 编辑python文件:test.py
  2. 打包test.py。可以通过pip3 show pandas获取site-packages的路径。打包后的二进制程序在当前目录的dist目录下。
pyinstaller -F -p /home/myvenv/lib64/python3.6/site-packages test.py
  1. 退出虚拟环境
deactivate

其它

  • 需要管理多个虚拟环境时,推荐使用virtualenvwrapper
  • 如果需要删除virtualenv创建的虚拟环境,直接删除目录即可。
上一篇:Linux 下Python虚拟环境(virtualenv)的安装和使用


下一篇:redis客户端redis-plus-plus