Django: ошибка при запуске supervisorctl: importerror в / нет модуля с именем ___

У меня есть приложение Django, которое я перезапускаю с помощью команд

ubuntu@ip-1234:~$sudo supervisorctl restart myapp

myapp: stopped
myapp: started

ubuntu@ip-1234:~$ sudo systemctl restart nginx
ubuntu@ip-1234:~$ sudo systemctl reload nginx

Однако когда я попал в свой домен (debug = True), я получил сообщение об ошибке:

ImportError at /
No module named pdfrw

Однако, если я вернусь в свое приложение и попытаюсь загрузить пакет

ubuntu@ip-1234:~$sudo -i -u myapp
myapp@ip-1234:~$ pip install pdfrw
Requirement already satisfied: pdfrw in ./.local/lib/python2.7/site-packages

Я не уверен, почему он не находит этот пакет в производстве. Раньше я мог заставить это работать, я полагаю, что что-то не так с тем, где устанавливаются мои пакеты. Мое приложение работает нормально, если я удалю строку from pdfrw import PdfDict, которая есть в моем коде. Может, с разрешениями что-то делать?

Конфигурация моего супервизора в /etc/supervisor/conf.d/myapp.conf

[program:myapp]
command = /webapps/program:myapp_django/bin/gunicorn_start                    ; Command to start app
user = program:myapp                                                          ; User to run as
stdout_logfile = /webapps/program:myapp_django/logs/gunicorn_supervisor.log   ; Where to write log messages
redirect_stderr = true                                                ; Save stderr in the same log
environment=LANG=en_US.UTF-8,LC_ALL=en_US.UTF-8                       ; Set UTF-8 as default encoding

Используется ли тот же экземпляр Python, с которым вы тестируете? Попробуйте which python, чтобы решить эту проблему.

Shadow 26.10.2018 07:10

@Shadow, нахожусь ли я в myapp или ubuntu, я получаю "/ usr / bin / python"

benjo 26.10.2018 07:12

Это будет связано с путем python, который использует myapp. Можете ли вы опубликовать конфигурацию супервизора для myapp?

Will Keeling 26.10.2018 13:23

@WillKeeling Добавил это выше - не похоже, что я что-то менял

benjo 27.10.2018 00:03

в вашей конфигурации супервизора нет myapp, разместите любой файл conf в каталоге /etc/supervisor/conf.d/, в котором есть myapp

sipp11 27.10.2018 01:07

@ sipp11 Обновлено - спасибо за разъяснения

benjo 27.10.2018 02:23
0
6
200
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Решено!

pip install --target=lib/python2.7/site-packages pdfrw

Я устанавливал пакеты не в то место.

Другие вопросы по теме