2015-03-27 5 views
-1

Я установил этот https://github.com/andybak/django-backupразрешения call_command Django Nginx + gunicorn + supervisord

App обеспечивает только команду backup управления

Что я делаю:

1.$ python manage.py backup

Все хорошо. Создан резерв!

2.$ python manage.py shell

from django.core.management import call_command 
call_command('backup') 

Все в порядке. Создан резерв!

3. Я создал вид:

from django.core.management import call_command 

def backup(request): # /admin/backup/ 
    call_command('backup') 
    return redirect(request.META.get('HTTP_REFERER')) 

4.$ python manage.py runserver 0.0.0.0:9999

Перейти в браузер mywebsite.com:9999/admin/backup/

Все в порядке. Создан резерв!

5. Но когда я запускаю мой сайт через Nginx + gunicorn + supervisord и перейти в браузер mywebsite.com/admin/backup/ - резервный файл пуст.

Возможно, это все о разрешениях? Пожалуйста помоги.

Джанго 1,7


EDIT:

6./var/env/project/bin/gunicorn core.wsgi -b 0.0.0.0:9999 --user=root --group=root и перейти в браузер mywebsite.com:9999/admin/backup/

Все нормально , Создан резерв!


/etc/supervisord.conf:

[program:project] 
command=/var/env/project/bin/gunicorn core.wsgi -b 0.0.0.0:8000 --user=root --group=root 
directory=/var/www/project/ 
environment=PATH="/var/env/project/bin/activate",DJANGO_SETTINGS_MODULE="core.settings_prod" 
user=root 
autostart=true 
autorestart=true 
redirect_stderr=true 
+1

да, это, вероятно, связано с разрешения, проверьте, какой пользователь используется gunicorn –

+0

пользователя в gunicorn.conf –

+0

, которые пользователь выполняет в gunicorn и с помощью которого пользователь может делать вам проверить его вручную? – lapinkoira

ответ

0

Понял! Ошибка в supervisord.conf environment=PATH= должно быть environment=PYTHONPATH=

environment=PYTHONPATH="/var/env/project/bin/activate",DJANGO_SETTINGS_MODULE="core.settings_prod" 
Смежные вопросы