Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何部署python模块扩展_Python_Deployment - Fatal编程技术网

如何部署python模块扩展

如何部署python模块扩展,python,deployment,Python,Deployment,我使用virtualenv——无站点软件包和pip安装-r requirements.txt部署我的应用程序。需求中有feedgen模块,该模块具有站点包/feedgen/ext目录和扩展。其中,我为feedgen部署了foobar.py扩展,答案是: 部署模块库的最佳实践是什么?例如,在Heroku、AWS等情况下 是否可以使用setup.py?或者Makefile?还是shell脚本来复制文件?或者别的什么 PS我还没有准备好为feedgen贡献力量,因为我的代码仍然是“气味”。(我知道问题

我使用
virtualenv——无站点软件包
pip安装-r requirements.txt
部署我的应用程序。需求中有
feedgen
模块,该模块具有
站点包/feedgen/ext
目录和扩展。其中,我为feedgen部署了
foobar.py
扩展,答案是:

部署模块库的最佳实践是什么?例如,在Heroku、AWS等情况下

是否可以使用
setup.py
?或者
Makefile
?还是shell脚本来复制文件?或者别的什么


PS我还没有准备好为feedgen贡献力量,因为我的代码仍然是“气味”。(我知道问题会自行解决)

最流行的做法是在pypi上安装一个模块,并能够使用pip安装它。第二种方法是从github克隆并运行
python setup.py install
。第二种方法通常用于从源代码安装,第一种方法通常提供不需要编译的已编译控制盘

如果不想共享代码,可以使用pip中的文件安装,并使用私有git存储库而不是github

pyarrow
中的一个示例:

pip的常规安装写在:

。这里是一个Cython模块,因此作者使用build_ext而不是install

git clone https://github.com/apache/arrow.git
...
cd arrow/python
...
python setup.py build_ext --inplace

最流行的做法是在pypi上放置一个模块,并能够使用pip安装它。第二种方法是从github克隆并运行
python setup.py install
。第二种方法通常用于从源代码安装,第一种方法通常提供不需要编译的已编译控制盘

如果不想共享代码,可以使用pip中的文件安装,并使用私有git存储库而不是github

pyarrow
中的一个示例:

pip的常规安装写在:

。这里是一个Cython模块,因此作者使用build_ext而不是install

git clone https://github.com/apache/arrow.git
...
cd arrow/python
...
python setup.py build_ext --inplace

@凯夫飞,谢谢。你对git clone和build_ext的建议听起来很正确。@keiv fly,谢谢。你对git clone和build\u ext的建议听起来很正确。