Python中如何将程序部署到无法连接外网的生产环境?
小弟每次上线程序,梳理依赖和编译源码包都是个很痛苦的事情…而目前试过的打包程序,如 pyinstaller,cxfreeze,都或多或少会有一些包不支持的问题,同时构建依赖打包脚本也是个满痛苦的事儿…请问各位大大是如何部署自己开发的程序到生产环境上的呢?
Python中如何将程序部署到无法连接外网的生产环境?
docker
我无法理解你的问题。
内网…
VMware
docker 解决你的问题
docker,但是如何是内网,程序怎么跑呢?数据什么的哪儿来呢?
在 abi 兼容的系统,pip wheel -r requirements.txt 下载编译所以 python 依赖。线上系统 pip install -r requirements.txt -f {{下载了离线依赖包的文件夹}},即可
啊,我是做运维,所以开发的程序以运维定制化为主,同时也开发一些功能性程序
如果是 abi 兼容 但是内核,libc 和 libpython 不兼容,这怎么办
你绝对需要 docker,他可能是唯一能救你命的人了,你的有时间拜访一下
一般找低版本的系统+对应 python 版本,比如 centos6 编译的 centos7 也能跑;
或者,去 pypa(python 官方包组织)的 github 源,找一个叫 manylinux 的项目,是基于 centos5,内置各种 python 版本,编译出来基本兼容所有 linux 的 whl。用 docker 拖下来,然后找对应版本 pip wheel 编译即可。
建虚拟环境,装好包 拷贝过去 不过其他的东西要一样


