Пока сайт доступен только локально на компьютере разработчика - это не более чем обычные рисунки на бумаге. Конечно, это ни в коем разе не отменяет всех заслуг программиста по созданию продукта, но все же сайтам место в интернете, где они реализовывают свои непосредственные функции. Если к проекту было приложено немало усилий и времени, то его запуск в работу для создателя должен быть особенно ценен.
Если дальше не углубляться в лирику, то развертывание сайта в интернете - это также важный этап в запуске всего интернет-проекта, чем он крупнее, тем более ответственно стоит подходить к этому вопросу.
Развертывать сайт на Jekyll можно различными способами. Я хочу лишь описать основные моменты при работе с GitHub. Все полезные ссылки по данной теме оставлю в конце статьи.
GitHub Pages и Jekyll
У GitHub есть достаточно интересный и удобный сервис - GitHub Pages
. С помощью этого сервиса HTML страницы в вашем репозитории становятся доступны в интернете. Никакого php правда не получится использовать, Pages обрабатывает только статические файлы, однако, с jekyll он также работает.
GitHub Pages на своей стороне генерирует статический сайт из исходников проекта на Jekyll подобно тому, как это выполнялось локально на компьютере. Содержимое папки _site
становится доступным в интернете.
Чтобы все заработало необходимо создать репозиторий на GitHub. Если репозиторий персональный, то называться он должен username.github.io
, если репозиторий отдельного проекта, то исходники стоит размещать в ветке gh-pages
(подробнее все отлично описано на сайте проекта). Далее на удаленный репозиторий отправляем исходники проекта и сайт становится доступным по адресу http://username.github.io
.
С этого момента работать над сайтом можно из любого рабочего места, отсылая изменения на удаленный репозиторий или производя изменения прямо через редактор на GitHub.
Если потребуется связать такой хостинг с личным доменом, то это решается размещением в корне проекта файла CNAME
с указанием домена, а также соответствующей настройкой у регистратора домена (нужно будет указать адреса серверов GitHub).
Важно отметить, что одно из основных ограничений, которых GitHub Pages накладывает на использование Jekyll - это невозможность использовать любые плагины. А именно разрешается использовать плагины, которые есть в зависимостях у самого GitHub Pages (список плагинов тут). Остальные плагины работать не будут. Если без плагинов никак не обойтись выход только такой: или отправлять на репозиторий предварительно уже сгенерированный сайт (то есть содержимое _site
), или же отказаться от подобного хостинга.
Как таковых проблем с развертыванием я не испытал. Большую часть возникающих вопросов удачно решал с помощью поиска. Документация по GitHub Pages также отличная. Полезную информацию также всегда можно почерпнуть на репозиториях сайтов, уже работающих на связке Jekyll GitHub Pages.
В заключении приведу основной список ссылок для изучения:
- Официальная страница Jekyll на тему deployment. https://jekyllrb.com/docs/github-pages/
- Как бы я это назвал - быстрый старт с GitHub Pages. https://pages.github.com/
- Поддерживаемые плагины https://pages.github.com/versions/
- Небольшой список популярных сайтов на GitHub и Jekyll https://github.com/showcases/github-pages-examples
- Список блогов на Jekyll https://github.com/jekyll/jekyll/wiki/Sites
- GitHub Help, тут есть все. https://help.github.com/