首页 文章

将纯python部署到heroku

提问于
浏览
2

我"finished"一个小python项目,我想在heroku GitHub page上部署它 . 我想执行:python2 main.py -i json-rpc以便让json-rpc服务器监听连接但是在推送到heroku时我收到以下错误:

$ git push heroku master计数对象:153,完成 . Delta压缩使用多达8个线程 . 压缩对象:100%(87/87),完成 . 写对象:100%(153/153),43.42 KiB,完成 . 总计153(delta 61),重复使用153(delta 61)-----> Heroku接受推送! Heroku推送拒绝,没有检测到Cedar支持的应用程序到git@heroku.com:panager.git! [远程拒绝] master - > master(pre-receive hook拒绝)错误:未能将某些引用推送到'git@heroku.com:panager.git'

2 回答

  • 1

    另外,请确保requirements.txt使用ANSI编码保存,而不是Unicode或UTF-8!如果你像我这样的总n00b,你只需在记事本中打开requirements.txt,选择SAVE AS并从下拉列表中更改“编码” . 我尝试了上面的所有建议,但我的错误是由于这个简单的编码问题 .

  • 12

    您可能想要尝试做的是创建一个Procfile . 完整的文件名是 Procfile ,没有扩展名,它进入项目文件夹的主目录 .

    该文件的内容将是:

    web: python main.py -i json-rpc
    

    给它一个镜头,看它是否有效 .

    或者,您可能忘记为您的应用创建 virtualenv .

    你应该按照Heroku的指南中的说明进行操作Getting Started with Python on Heroku

    更新:

    我终于在一个新的Heroku应用程序上测试了这个,你缺少的是 requirements.txt . 即使您没有任何依赖项,您仍然需要它 . 在主项目文件夹中的virtualenv中,运行 pip freeze > requirements.txt ,然后 git add . 然后 git commit -m "added requirements.txt" ,然后推送到Heroku,它应该工作 .

相关问题