Jekyll jest to prosty, modułowy, generator stron statycznych. Do swojego działania wykorzystuje takie narzędzia jak Markdown, Liquid, HTML i CSS.
Długie lata system blogowy kojarzył mi się z Wordpressem. No bo jak najszybciej postawić stronę z bazą danych, która będzie dość użyteczna do pisania swoich notatek i przemyśleń, nie będzie wymagała specjalnych zabiegów, które w miarę czasu zniechęcają do napisania czegokolwiek, gdyż by opublikować jakiś wpis, trzeba wykonać mnóstwo innych czynności - tylko wordpress lub inny opensource CMS. Logujesz się, siadasz i piszesz. Zapewne wiele ludzi myśli podobnie.
Otóż jak się okazuje, do tak prostych zadań można wykorzystać trochę mniejsze środowisko - i tu na scenę wkracza Jekyll.
Pewnego dnia mój facet wysłał mi linka do Jekyll’a. W pierwszym momencie stwierdziłam - ot ciekawostka. Naciskał na mnie “forkuj ten templet”, “sforkowałaś już?” itp. Stwierdziłam “ok”, skoro nie daje spokoju, coś musi być na rzeczy.
Sklonowałam repo wskazanego templeta z Jekyll’a i… mi się spodobało. Naprawdę jest to dobre narzędzie. Zastanawiam się jedynie nad jego wydajnością w miarę wzrostu wpisów i notatek. Rozrost treści zazwyczaj ma wpływ na szybkość działania systemu. Zobaczymy jak ta instalacja poradzi sobie z tym zadaniem. Moje obawy dotyczą głównie generacji feed’a dla postów - teraz gdy mam tylko kilka wpisów zajmuje to 0.629 sekund. To bardzo dużo. Zobaczymy jak będzie dalej.
1.Instalacja
Sama instalacja Jekyll’a jest bardzo prosta. Przedstawię sposób instalacji na dystrybucji linux’a Bunsen, gdyż tego właśnie środowiska używam. Instalacja Jekyll’a na innym środowisku opisana jest na stronie www projektu https://jekyllrb.com/docs/installation/
- Otwieramy terminal
- Wpisujemy komendę:
1
sudo apt install ruby-full build-essential
- Po zainstalowaniu powyższego, dodajemy zmienne środowiskowe do ~/.bashrc
1 2 3 4
echo '# Install Ruby Gems to ~/gems' >> ~/.bashrc echo 'export GEM_HOME="$HOME/gems"' >> ~/.bashrc echo 'export PATH="$HOME/gems/bin:$PATH"' >> ~/.bashrc source ~/.bashrc
- No i instalujemy Jekyll’a:
1
gem install jekyll bundler
-
Następnie możemy skolonować repo jendego z wielu themów Jekyll’a np Reverie - ten templet użyłam do tego bloga, lub też rozpocząć z nową czystą instalacją.
- Po skolonowaniu lokalnie templeta uruchamiamy polecenie:
1
bundle exec jekyll serve
- Powinniśmy otrzymać komunikat na terminalu:
1 2 3 4 5 6 7 8 9 10
Configuration file: path_to_jekyll_template/_config.yml Source: path_to_jekyll_template Destination: path_to_jekyll_template/_site Incremental build: disabled. Enable with --incremental Generating... Jekyll Feed: Generating feed for posts done in 0.629 seconds. Auto-regeneration: enabled for 'path_to_jekyll_template' Server address: http://127.0.0.1:4000/blog/ Server running... press ctrl-c to stop.
- Server działa. Otwieramy przeglądarkę i sprawdzamy nasz adres: 127.0.0.1:4000
Proste i wydajne. W następnym wpisie opiszę jak dodać prosty system powiązania postów według kategorii i tagów, tak aby działał dla github Pages.