Автоматизация развертывания Django на lighttpd

#django #deployment #lighttpd

#django #развертывание #lighttpd

Вопрос:

У меня есть несколько простых сайтов на основе django, и я постоянно увеличиваю их количество. Каждый раз, когда я развертываю сайт, мне нужно:

  1. Вручную создайте bash-скрипт, который запускает сервер Django FastCGI.
  2. Добавление его в etc/init.d для запуска после перезагрузки сервера.
  3. Создание отдельной конфигурации для Lighttpd для работы с сервером FastCGI и обслуживания статических файлов.

Я знаю, как это сделать, но я бы хотел автоматизировать эту задачу, если это возможно.

Процесс настройки моей мечты может выглядеть следующим образом:

  1. У меня есть папка где-то в моем каталоге /var/. Например: /var/django/
  2. Я клонирую один из своих проектов в подкаталог этого каталога.
  3. После этого происходит одно из следующих действий: некоторое программное обеспечение автоматически обнаруживает создание папки и создает все необходимые конфигурации, а затем перезапускает Lighttpd. ИЛИ я вручную запускаю какой-то скрипт в своей новой папке, чтобы сделать это.

Я попытался найти существующие инструменты для такой автоматизации или что-то подобное в Интернете, но не смог найти ни одного.

Итак, я хотел бы спросить, есть ли такие инструменты? Может быть, не совсем для установки приложений Django, но для такого рода автоматизации процессов в целом. Или все просто пишут свой собственный скрипт bash для выполнения таких действий?

Ответ №1:

вы уже смотрели на fabric и puppet?

Комментарии:

1. Я посмотрел на fabric, но у меня сложилось впечатление, что речь идет скорее об обновлении и обслуживании кода, а не о первоначальном развертывании: хотя с его помощью легко обновлять / запускать / устанавливать код, автоматическое создание новой конфигурации на основе существующих шаблонов и местоположения проекта намного менее тривиально. Но, возможно, это впечатление неверно, я смотрю на это еще раз. И в puppet тоже раньше этого не видел.

2. Ссылка на структуру отключена.

Ответ №2:

Я думаю, что fabric справится с этой задачей. Я только начал читать документы, кажется, очень просто начать. Также у него есть хороший Python-ic способ делать что-то локально и на удаленных серверах.

Комментарии:

1. Ответил о структуре в предыдущем вопросе, но все равно спасибо!