Получение Gunicorn для работы на порту 80

Я построил API с флягой. У моего приложения нет статических активов, поэтому у меня нет оснований использовать nginx.

Я хочу запустить пушечный огонь на порту 80.

У меня есть «сценарий развертывания»:

mkdir .log 2> /dev/null DEBUG=0 gunicorn -b 0.0.0.0:80 backend:app --access-logfile .log/access.log --error-logfile .log/general.log 

Я хочу запустить пулемётчик на порту 80 с authbind . Я последовал этому руководству здесь.

Обратите внимание, что я могу запустить authbind python -m SimpleHTTPServer 80

Когда я пытаюсь запустить authbind ./deployment.run 80 ,

Я вижу следующую ошибку:

 2013-04-25 15:32:55 [24006] [ERROR] Can't connect to ('0.0.0.0', 80) 2013-04-25 15:33:08 [24018] [INFO] Starting gunicorn 0.17.4 2013-04-25 15:33:08 [24018] [ERROR] Retrying in 1 second. 2013-04-25 15:33:09 [24018] [ERROR] Retrying in 1 second. 2013-04-25 15:33:10 [24018] [ERROR] Retrying in 1 second. 2013-04-25 15:33:11 [24018] [ERROR] Retrying in 1 second. 2013-04-25 15:33:12 [24018] [ERROR] Retrying in 1 second. 

Любые идеи, почему я не могу связать пушки с портом 80?

Любые рекомендации?

  • Как кодировать имя файла UTF8 для заголовков HTTP? (Python, Django)
  • Что такое хороший, надежный короткий способ получить кодировку веб-страницы?
  • Как остановить BaseHTTPServer.serve_forever () в подклассе BaseHTTPRequestHandler?
  • Использование Python / Selenium / Лучший инструмент для задания для получения URI запросов изображений, созданных с помощью JavaScript?
  • Создание и анализ многостраничных HTTP-запросов в Python
  • Python - поиск в потоке ответов HTTP
  • Flask - ошибка POST 405 не допускается
  • Python Google App Engine Получение строки вместо объекта JSON
  • 2 Solutions collect form web for “Получение Gunicorn для работы на порту 80”

    Попробуйте включить authbind в свой сценарий развертывания, например:

     mkdir .log 2> /dev/null DEBUG=0 authbind gunicorn -b 0.0.0.0:80 backend:app --access-logfile .log/access.log --error-logfile .log/general.log 

    Затем просто запустите ./deployment.run 80 .

    (Кроме того, ваш скрипт, похоже, не использует никаких параметров, возможно, замените 80 в вашем скрипте на $1 ?)

    Если вы находитесь в среде, подобной unix, для портов <1024 (например, 80) потребуются привилегии суперпользователя.

    Python - лучший язык программирования в мире.