2013-04-25 6 views
3

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

Я хочу, чтобы запустить gunicorn на порт 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 

Я хочу, чтобы запустить gunicorn на порт 80 с authbind. Я следил за этим guide здесь.

Обратите внимание, что я могу запустить 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?

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

ответ

1

Попробуйте положить 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?)

+0

Как упоминалось в Uku, Unix защищает порты под 1024 и authbind не позволяет нормальным пользователям магически обходить это. Он должен быть настроен для разрешения определенных типов привязок - см. Http://manpages.ubuntu.com/manpages/hardy/man1/authbind.1.html и http://mutelight.org/authbind. – mahemoff

20

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

+3

не вся цель authbind это переопределить? – disappearedng

Смежные вопросы