Как автоматизировать создание и развертывание сайта Jekyll на веб-сервере по FTP
Мои файлы Jekyll хранятся в BitBucket, и я хотел бы иметь возможность автоматически генерировать папку _site при каждом новом внесении изменений. (Обратите внимание, я не хочу помещать свою папку _site в git, о чем и речи не идет).
После создания этого _сайта я бы хотел автоматически развернуть его на своем веб-сервере через FTP.
Это вообще возможно? Какие у меня варианты?
Спасибо!
1 ответ
Так как вы не упомянули, где _site
папка пойдет, здесь 'общий ответ.
Короче говоря, вам понадобится веб-сервер или служба, которая прослушивает зацепку BitBucket Post Commit, вот соответствующая документация для этого.
Таким образом, при каждом нажатии BitBucket будет запускать действие и уведомлять ваш сервер / приложение / службу, которая затем будет создавать новый _site
и развернуть туда, куда вы хотите.
Вот хороший учебник по настройке с использованием заданий cron и веб-сервера. ссылка на сайт
Также будет работать простой VPS или какой-нибудь крошечный экземпляр Amazon EC / виртуальная машина Azure.
Конечно, они, вероятно, не будут на 100% бесплатными.
Если вы ненавидите использовать серверы, вместо этого можно использовать службу непрерывной интеграции (CI), где при фиксации перехватчики будут запускать сборку,
Travis-CI и Drone.io бесплатны для публичных репо, но если ваше репо является частным, вам придется пойти на платную услугу. Есть и много других.
(Обратите внимание, что Travis-CI не совместим с BitBucket на момент написания, он работает с GitHub)
По сути, CI используется для запуска тестов, но помимо этого, мы можем использовать его для генерации сборки и отправки или копирования _site
где-то, может быть, ваш собственный сервер. Или в случае, как эта статья описывает это, другой репо. (Прочтите "Как стать богом Джекилла" о том, как творчески использовать способы развертывания)