Vagrant отлаживает python/django на Pycharm

Я пытаюсь отладить проект Django внутри Vagrant.

Я искал ответы и читал все доступные документы о Vagrant, удаленной отладке с Pycharm и многое другое.

Теперь у меня есть отлично работающая команда "Запустить"

ssh://[email protected]:2222/home/vagrant/dev-projects/OP_3.0/bin/python2.7 -u
 /home/vagrant/dev-projects/3.0/online_platform/manage.py runserver 8000

0 errors found
April 06, 2014 - 02:32:40
Django version 1.6.2, using settings 'local_settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Я могу получить доступ к нему из HOST, и все работает так же, как и до. Но когда я пытаюсь запустить команду "Отладка", у меня есть это:

ssh://[email protected]:2222/home/vagrant/dev-projects/OP_3.0/bin/python2.7 -u
 /home/vagrant/pydev/pydevd.py --multiproc --client '0.0.0.0' --port 34117 --file /home/vagrant/dev-projects/3.0/online_platform/manage.py runserver 8000

Traceback (most recent call last):
  File "/home/vagrant/pydev/pydevd_comm.py", line 310, in OnRun
    self.handleExcept()
  File "/home/vagrant/pydev/pydevd.py", line 1414, in handleExcept
    ReaderThread.handleExcept(self)
  File "/home/vagrant/pydev/pydevd_comm.py", line 329, in handleExcept
    GlobalDebuggerHolder.globalDbg.FinishDebuggingSession()
AttributeError: 'NoneType' object has no attribute 'FinishDebuggingSession'
Traceback (most recent call last):
  File "/home/vagrant/pydev/pydevd.py", line 1497, in <module>
    dispatcher.connect(host, port)
  File "/home/vagrant/pydev/pydevd.py", line 1400, in connect
    self.reader.run()
  File "/home/vagrant/pydev/pydevd_comm.py", line 252, in run
    self.OnRun()
  File "/home/vagrant/pydev/pydevd_comm.py", line 325, in OnRun
    self.handleExcept()
  File "/home/vagrant/pydev/pydevd.py", line 1414, in handleExcept
    ReaderThread.handleExcept(self)
  File "/home/vagrant/pydev/pydevd_comm.py", line 329, in handleExcept
    GlobalDebuggerHolder.globalDbg.FinishDebuggingSession()
AttributeError: 'NoneType' object has no attribute 'FinishDebuggingSession'

Process finished with exit code 1`

Любая реальная помощь, пожалуйста...

Ответ 1

Если вы

  • Пусть ваша конфигурация проекта PyCharm знает о брандмауэре проекта
  • Настройте удаленный интерпретатор типа Vagrant, ссылающийся на правый исполняемый файл python в окне бродяг.
  • Используйте этот удаленный интерпретатор в качестве интерпретатора проекта python

вам больше не придется больше беспокоиться с помощью ssh и с командами командной строки отладчика. Просто скажите PyCharm, что вы хотите отлаживать, как если бы это был локальный процесс. (Можете работать еще лучше, если вы также позволите PyCharm знать, что он имеет дело с проектом Django.)