【问题标题】:How do I deploy a python application to an external server?如何将 python 应用程序部署到外部服务器?
【发布时间】:2015-01-18 17:44:26
【问题描述】:

我在本地笔记本电脑上编写了一个 python 脚本,它使用了几个第三方包。我现在想在外部服务器上定期(通过 cron 作业)运行我的脚本。

外部服务器很可能没有安装所有依赖项,有没有办法打包和部署我的python脚本和依赖项以确保它能够运行?

我已经尝试将脚本打包为 exe,但没有成功。

【问题讨论】:

    标签: python deployment packaging


    【解决方案1】:

    不清楚你有什么样的第三方包,但是对于那些用pip安装的,你可以在你的开发环境中这样做:

    $ pip freeze > requirements.txt
    

    然后你就可以在你的生产环境中安装这些包了:

    $ pip install requirements.txt
    

    理想情况下,您的生产机器上已经有一个 virtualenv。如果没有,那么在部署脚本之前可能值得阅读这些内容。

    【讨论】:

    • 什么是 virtualenv?我知道,我可以谷歌,但我认为你可以推荐任何关于 virtualenv 的好的介绍性读物。谢谢!
    • 顺便说一下,我现在是怎么做的:我刚刚将脚本复制到我的外部服务器上,并下载了我需要的所有需求/依赖项。然后创建了一个cronjob,就是这样。如果我要在这个外部服务器上部署更多的 python 项目,我一定会检查 virtualenv!
    【解决方案2】:

    只需将您的计算机变成服务器。只需将路由器设置为端口转发,以便在输入路由器的 IP 时显示服务器的内容。你当然可以购买一个 DNS 域来为该 IP 提供一个人类可读的 URL。

    【讨论】:

    • 这对我来说不太可行。我不希望我的笔记本电脑 24/7 全天候运行。我可以访问真实的服务器并希望使用它们。但是,它们在不同的操作系统上运行,等等......所以我正在考虑一种有效的方法来部署我在这些外部服务器上的笔记本电脑上开发的 python 脚本......我敢肯定,一定有办法。
    • 您可以使用 SSH 连接到这些服务器并安装 Python 和其他框架。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-17
    • 1970-01-01
    • 2020-01-05
    • 2020-02-13
    • 1970-01-01
    • 2021-10-13
    相关资源
    最近更新 更多