Как стать автором
Обновить

Настройка удаленного интерпретатора на Pycharm для Django

Время на прочтение3 мин
Количество просмотров46K

В этой статье хочу рассказать, а также показать настройку полезного инструмента для удаленной разработки от компании JetBrains встроенное в IDE Pycharm. Такой инструмент есть уже давно, но многие разработчики относятся к этому не серьезно, и для внесения изменений в проект предпочитают разворачивать его локально. Когда намного легче на том-же сервере, сделать копию части проекта и изменять или тестировать на другом порту с помощью встроенных средств удаленного интерпретатора Pycharm. Конечно не во всех ситуациях это хороший вариант, но для правки, и доработки небольших проектов очень даже подходит. А если проект с нуля, то создавая его на удаленном сервере, исчезает потребность в переносе и адаптации его под сервер(хостинг), которые неизбежно ведут к появлению множества багов и несовместимостей.

К тому же такой подход нас избавляет от таких проблем:

• на разных серверах свой Unix и свои приколы, разворачивать локально и подгонять среду под особенности того или иного сервера может занять приличное количество времени;
• разные версии python;
• И если в файле req.txt для Django не указаны все зависимости;
и т.д.

Процесс настройки удаленного интерпретатора Pycharm для Django


Идем в file-> settings-> deployment



Вводим настройки подключения сервера, у кого какое (SFTP, FTP, и т.д.). В поле «root path» – нужно указать путь к папке с проектами. Во вкладке «Mapping» в поле «Deployment path on server» необходимо указать путь от «root path» к папке с проектом.



К примеру:
«root path» = /data/python
«Deployment path on server» = /project
Под deployment есть options, в них полезно выставить выгрузку файлов на сервер по горячим клавишам, например, ctrl+s и другие настройки.

Подготовка закончена, переходим соответственно к самой настройки удаленного интерпретатора.



Настройка интерпретатора не сильно отличается от настройки deployment (кнопкой «Fill from deployment server settings» можно заполнить часть настроек). Нажимаем «Configure Interpreters», выбираем remote, или если уже какой-то был создан, то с помощью плюсика. Далее необходимо указать путь к интерпретатору python на сервере. После нажимаем «ok» и немного подождать пока Pycharm скачает (создаст) образ skeleton python в месте с приложениями которые были установлены через pip или подобное ему, что очень удобно, в последствии можно спокойно переходить к этим файлам из кода!

Следующим шагом будет настройка запуска Django сервера используя средства Pycharm для разработки.



В инструментах с права выбираем «Edit configuration»



В появившемся окне вводим «host» 0.0.0.0 для того что бы с любого ip принимал вызовы и «port» который у Вас является свободным на сервере. Выбираете удаленный интерпретатор в поле «Python interpreter», который настроили раннее. В поле «Environment variables» необходимо указать переменную «DJANGO_SETTINGS_MODULE» и ее значение, состоящее из названия главного приложения Django и файла с настройками в нем.



На этом настройка удаленного интерпретатора завершена, для его запуска можно воспользоваться кнопкой на панели инструментов с права.



После с низу появится окно логов сервера со всевозможными инструментами.



Стоит отметить что помимо удаленной отладки в Pycharm встроили очень полезные инструменты(menu-> tools): SSH-клиент, Django-console, Python-console, Debug, и прочие.

На скриншоте ниже Django console и SSH-клиент в режиме сплит.



Заключение
Способ разработки (отладки), который был представлен выше, по сути является попыткой выхода на новый уровень. Развертывание разработки на локали – это как запатентованный проверенный способ, ну а описанный выше является новым подходом, и никто не гарантирует его поддержку, хотя JetBrains стараются, но как известно первые всегда набивают шишки. Удачи.

P. S.
Так же при настройке удаленного интерпретатора можно использовать virtualenv, где при разработке или доработке проекта можно проводить абсолютно независимые тесты и не влиять на сервер, но это отдельная тема.
Теги:
Хабы:
Всего голосов 26: ↑22 и ↓4+18
Комментарии7

Публикации

Истории

Работа

Python разработчик
131 вакансия
Data Scientist
76 вакансий

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
19 сентября
CDI Conf 2024
Москва
20 – 22 сентября
BCI Hack Moscow
Москва
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн
24 сентября
Astra DevConf 2024
МоскваОнлайн
25 сентября
Конференция Yandex Scale 2024
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн