Pienenä harrasteprojektina siirsin blogini Amazonin S3:een. Sivusto koostuu nyt staattisista tiedostoista, jotka on generoitu Jekyllillä.

Vaikka oman virtuaalipalvelimen pyörittäminen nykypäivänä ei maksa juuri mitään, niin tämä ratkaisu on vielä kertaluokkaa halvempi. Lisäksi pidän tämän setupin huolettomuudesta: ei tarvetta tietoturvapäivityksille tai muille ylläpitotoimille. Ei ole mitään järjestelmää tai tietokantaa, johon murtautua — ainoastaan kasa HTML-tiedostoja.

Pidän myös siitä, että blogin sisältö on nyt GIT-versionhallinnassa Markdown-tiedoistoina.

Putki on seuraavanlainen:

  • postauksen kirjoittaminen Markdownilla ja lisääminen Jekyllilin _posts-hakemistoon ja samalla GIT-repoon
  • tässä vaiheessa voin halutessani generoida saitin lokaalia esikatselua varten komennolla bundle exec jekyll serve, jolloin voin selata saittia osoitteessa http://localhost:4000
  • mainiolla s3_website-palikalla kopioidaan edellisen deploymentin jälkeen päivittyneet tiedostot S3:een
  • S3:n edessä on Cloudfront (Amazonin CDN)

Deploymenttia varten minulla on oma komento (rake deploy), joka tekee S3:sta varten tehdyn buildin ilman tiedostoissa oletuksena olevia HTML-päätteitä.

Samalla tuli siirrettyä blogi HTTPS-aikaan. Sertifikaatit ovat Let’s Encrypt -palvelusta ja vielä on työnalla säätää node.js:llä AWS Lambda —funktio, joka päivittäisi noita 90 päivää kerrallaan voimassa olevia sertifikaatteja automaattisesti.