Blog Jekyll, Hosting di Gitlab, Custom Domain dan Setup SSL LetsEncrypt [Bagian 1]

2 menit waktu baca

Selayang Pandang

Jekyll adalah ‘framework’ statis open source yang ditulis dengan menggunakan bahasa pemrograman Ruby. Statis karena Jekyll hanya mendukung bahasa pemrograman statis seperti html, css, js dsb. Kebanyakan Jekyll dipilih karena simpel, tidak membutuhkan koneksi ke database, sehingga jauh lebih aman dan lebih cepat (diakses maupun diindex google) jika dibanding kan dengan CMS semacam Joomla, Wordpress, Drupal, dsb

Pada posting kali ini saya akan coba mendokumentasikan langkah demi langkah untuk memasang blog menggunakan ‘framework’ Jekyll dengan tema Minimal Mistakes di hosting Gitlab, mengubah (custom) domain gitlab.io ke domain pribadi sekaligus mengatur SSL-nya menggunakan Letsencrypt.

Requirement

Saya asumsikan, kamu sudah paham (meski sedikit) tentang:

  • Git
  • Ruby
  • HTML
  • CSS
  • JavaScrypt
  • Markdown
  • OS Linux/Mac – Saya menggunakan Ubuntu Mate 17.04 (Mikocok Windows bisa saja, tapi nanti perbedaan tutornya terlalu jauh, jadi kelaut aja dah :D )

Instalasi dan Konfigurasi Jekyll

Instalasi dan Konfigurasi Jekyll di Local

Ada banyak cara untuk install Jekyll, berikut cara yang paling umum:

~ $ gem install jekyll bundler
~ $ jekyll new projek-jekyll-pertamaku
~ $ cd projek-jekyll-pertamaku
~/projek-jekyll-pertamaku $ bundle exec jekyll serve

Selesai, kemudian akses http://localhost:4000 lewat browser.

Akan tetapi saya ingin agar Jekyll yang diinstall langsung memakai tema “Minimal Mistakes”, sehingga yang saya lakukan adalah sbb:

~ $ git clone https://github.com/mmistakes/minimal-mistakes.git
~ $ cd minimal-mistakes
~ $ git remote remove origin
~ $ bundle exec jekyll serve

Selesai, kita bisa akses http://localhost:4000 lewat browser. /tutorial/tutorial-cara-hosting-di-gitlab-custom-domain-ssl-letsencrypt-blog-jekyll/

Mempersiapkan Akun Gitlab

Buatlah akun di Gitlab, kemudian buat projek baru dengan nama namauserdigitlab.gitlab.io (misal: tohir212.gitlab.io), ingat alamat urlnya (Kalau saya: https://gitlab.com/tohir212/tohir212.gitlab.io.git)

Konfigurasi dan Unggah Jekyll ke Gitlab

Kita pastikan mengubah .gitignore agar tidak semua folder terunggah ke Gitlab,

~$ git rm -r --cached test
~$ touch test >> .gitignore 
~$ git add .
~$ git commit -m "edit .gitignore"
~$ git remote add https://gitlab.com/tohir212/tohir212.gitlab.io.git
~$ git add .
~$ git push 

Sampai sini belum selesai, agar blog kita bisa diakses dengan alamat namauserdigitlab.gitlab.io kita harus membuat file _gitlab-ci.yml, isinya sebagai berikut,

image: ruby:2.3

variables:
  JEKYLL_ENV: production

before_script:
  - bundle install

test:
  stage: test
  script:
  - bundle exec jekyll build -d test
  artifacts:
    paths:
    - test
  except:
  - master

pages:
  stage: deploy
  script:
  - apt-get update -y
  - apt-get install -y openjdk-7-jre-headless
  - apt-get install -y locales
  - echo "en_US UTF-8" > /etc/locale.gen
  - locale-gen en_US.UTF-8
  - export LANG=en_US.UTF-8
  - export LANGUAGE=en_US:en
  - export LC_ALL=en_US.UTF-8
  - bundle exec jekyll build -d public
  artifacts:
    paths:
    - public
  only:
  - master

Push lagi ke Server Gitlab

~$ git add .
~$ git commit -m "menambahkan .gitlab-ci.yml"
~$ git push

Sampai di sini kita bisa memonitor apakah job gitlab-ci.yml yang telah dibuat sukses atau tidak dengan cara klik projek namauserdigitlab.gitlab.io » pilih CI / CD » klik Pipelines

Pada posting berikutnya akan dijelaskan cara custom domain gitlab sekaligus install dan konfigurasi ssl letsencrypt. insyaAllah

Tinggalkan komentar