Развертывание Django: Как ты это делаешь?
Я пытался следовать таким руководствам, как этот, но он просто не работал для меня.
Поэтому мой вопрос таков: что является хорошим руководством по развертыванию Django и как вы развертываете Django.
Я продолжаю слышать, что capastrano довольно изящен в использовании, но я понятия не имею, как его работать или что он делает (кроме автоматизации развертывания кода), или даже если я хочу / нужно использовать его или нет.
6 ответов
mod_wsgi
в сочетании с virtualenv
для всех зависимостей, ртутный контроль в virtualenv и fabric
Рецепт, чтобы проверить изменения на сервере.
Я написал статью о своем обычном рабочем процессе: Развертывание веб-приложений Python. Надеюсь, это поможет.
В моей предыдущей работе у нас был настоящий гений, выполняющий обязанности по развертыванию, он развернул приложение (код Python, SQL, Perl и Java) в виде набора файлов deb, созданных для Ubuntu. К сожалению, сейчас у меня нет такой поддержки. Мы внедряем приложения вручную в виртуальные среды с отдельными конфигами nginx для FastCGI. Мы используем Paver для развертывания на удаленных серверах. Это больно, но это работает.
Это выглядит как хорошее место для начала: http://www.unessa.net/en/hoyci/2007/06/using-capistrano-deploy-django-apps/
Я использую mod_python, и каждый сайт в git-репозитории имеет следующие подкаталоги:
- мой сайт
- шаблон
- средства массовой информации
я имею mysite/settings.py
в .gitignore
и работать так:
- заниматься разработкой на моей локальной машине
- создать удаленный репозиторий на веб-сервере
- нажмите мои изменения в репо веб-сервера
- настроить конфигурационный файл apache vhost, настроить live server settings.py
- бежать
git checkout && git reset --hard && sudo /etc/init.d/apache2 restart
на репо веб-сервера, чтобы получить актуальную версию в рабочую копию и перезапустить apache - повторяйте шаги 1, 3 и 5 каждый раз, когда приходит запрос на изменение
Самый простой способ - использовать один из сайтов на http://djangofriendly.com/hosts/, который предоставит вам хостинг и настройку, но даже если вы захотите развернуть свой собственный, он позволит вам увидеть какие настройки используют другие сайты.