Kuidas luua staatiline sait Cloudflare Workers Sites'il

Tere! Minu nimi on Dima, ma olen SysOps meeskonna tehnikajuht Wrikes. Selles artiklis rÀÀgin, kuidas 10 minutiga ja 5 dollari eest kuus luua kasutajale lĂ€hedane veebisait ja automatiseerida selle juurutamine. Artikkel ei tegele peamiselt meie meeskonna sees lahendatavate probleemidega. See on pigem minu isiklik kogemus ja muljed uue tehnoloogiaga tutvumise osas. Olen pĂŒĂŒdnud sammud vĂ”imalikult detailselt kirjeldada, et juhend oleks kasulik erineva kogemusega inimestele. Loodan, et teile meeldib. Alustame!

Kuidas luua staatiline sait Cloudflare Workers Sites'il

Nii et vÔib-olla olete juba leidnud endale lihtsa ja odava veebisaidi majutuse viisi. VÔib-olla isegi tasuta, nagu on kirjeldatud selles ilusas artiklis.

Aga Ă€kki on teil siiski igav ja soovite tutvuda imelise uue tehnoloogia maailmaga? Ütleme, et mĂ”tleksite juurutamise automatiseerimisele ja sooviksite oma veebisaiti maksimaalselt kiirendada? Selles artiklis kasutame Hugo, aga see ei ole kohustuslik.

Automatiseerimiseks kasutame Gitlab CI/CD-d, kuid kuidas kiirendamisega? LĂ€hme otse Cloudflare'i ja kasutame Worker Sites.

Mida on vaja alustamiseks:

Osa 1: Hugo paigaldamine

Kui teil on juba Hugo paigaldatud vĂ”i kui eelistate teist staatiliste veebisaitide generaatorit (vĂ”i ei kasuta neid ĂŒldse), saate selle osa vahele jĂ€tta.

  1. Laadige Hugo alla aadressilt https://github.com/gohugoio/hugo/releases

  2. Asetage Hugo teostusfail ĂŒhte mÀÀratud PATH tee

  3. Looge uus veebisait: hugo new site blog.example.com

  4. Muutke praegune kataloog just loodud kataloogiks: cd blog.example.com

  5. Valige teema (https://github.com/budparr/gohugo-theme-ananke/releases vĂ”i ĂŒkskĂ”ik milline muu)

  6. Looge esimene postitus: hugo new posts/my-amazing-post.md

  7. Lisage sisu loodud faili: content/posts/my-amazing-post.md.
    Kui kÔik on tehtud, muutke mustandi vÀÀrtus false

  8. Genereerige staatilised failid: hugo -D

NĂŒĂŒd asub meie staatiline veebisait kataloogis ./public ja on valmis esimeseks kĂ€sitsi juurutamiseks.

Osa 2: Seadistame Cloudflare'i

NĂŒĂŒd lahendame Cloudflare'i algse seadistuse. Eeldame, et domeen veebisaidi jaoks on meil juba olemas. NĂ€iteks vĂ”tame blog.example.com.

Samm 1: Looge DNS-kirje

Esmalt valime oma domeeni ja seejĂ€rel menĂŒĂŒpunkti DNS. Looge A-kirje blog ja sisestage selle jaoks mĂ”ni vale IP (see on ametlik soovitus, kuigi nad oleksid vĂ”inud teha kuidagi ilusamaks).

Kuidas luua staatiline sait Cloudflare Workers Sites'il

Samm 2: Cloudflare'i token

  1. Minu profiil -> API tokenid vahekaart-> Create Token -> Loo kohandatud token

Kuidas luua staatiline sait Cloudflare Workers Sites'il

Siin peate piirama tokenit konto ja aladega, kuid jÀtma redigeerimisÔiguse pildil loetletud Ôigustele.

Salvesta token tulevikuks, see on vajalik kolmandas osas.

Samm 3: Saame accountid ja zoneid

Domeen → Overview → [parem kĂŒlgpaneel]

Kuidas luua staatiline sait Cloudflare Workers Sites'ilNeed on minu, palun Ă€rge kasutage neid 🙂

Salvesta need tokeniga koos, need on samuti vajalikud kolmandas osas.

Samm 4: Workersi aktiveerimine

Domeen → Workers → Haldage Workers

Valige Workersile ainulaadne nimi ja hind → Piiramatu (5 dollarit kuus praegu). Soovi korral saate hiljem minna ĂŒle tasuta versioonile.

Osa 3: Esimene deploy (kÀeline juurutamine)

Tegin esimese juurutamise kÀsitsi, et vÀlja selgitada, mis seal tegelikult toimub. Kuigi kÔike seda on vÔimalik teha ka lihtsamalt:

  1. Installime wrangler: npm i @cloudflare/wrangler -g

  2. Liigume meie blogi kataloogi: cd blog.example.com

  3. KĂ€ivitame wrangler: wrangler init — site hugo-worker

  4. Loome wrangleri jaoks konfi (sisestage token, kui seda palutakse): wrangler config

NĂŒĂŒd proovime teha muudatusi just loodud failis wrangler.toml (siin tĂ€ielik loetelu vĂ”imalike seadistuste kohta):

  1. MÀÀrame accountid ja zoneid

  2. Muudame route midagi sellist nagu *blog.example.com/*

  3. MÀÀrame false jaoks workersdev

  4. Muudame bucket'i . /public (vÔi seal, kus teie staatiline sait asub)

  5. Kui teil on rohkem kui ĂŒks domeen teel, peaksite maapealset teed töötavas skriptis parandama: workers-site/index.js (vt funktsiooni handleEvent)

SuurepÀrane, aeg on kÀivitada sait kÀsuga wrangler publish.

Osa 4: Juurutamise automatiseerimine

See juhend on koostatud Gitlabi jaoks, kuid edastab olemuse ja automatiseeritud juurutamise lihtsuse ĂŒldiselt.

Samm 1: Loome ja seadistame oma projekti

  1. Looge uus GitLabi projekt ja laadige sait ĂŒles: kataloog blog.example.com kogu sisu peaks olema projekti juurkataloogis

  2. Seadke muutuja CFAPITOKEN siin: Seaded → CI/CD → Variables

Samm 2: Looge fail .gitlab-ci.yml ja kÀivitage esimene juurutamine

Looge fail .gitlab-ci.yml juurkataloogis jÀrgmise sisuga:

etapid:
  - ehitab
  - juurutab

ehitamine:
  pilt: monachus/hugo
  etapp: ehitus
  muutujad:
    GIT_SUBMODULE_STRATEGY: rekursiivne
  skript:
    - cd blog.example.com/
    - hugo
  artefaktid:
    teed:
      - blog.example.com/public
  ainult:
    - master # see töö mÔjutab ainult 'master' haru
  sildid:
    - gitlab-org-docker #


juurutamine:
  pilt: timbru31/ruby-node:2.3
  etapp: juurutamine
  skript:
    - wget https://github.com/cloudflare/wrangler/releases/download/v1.8.4/wrangler-v1.8.4-x86_64-unknown-linux-musl.tar.gz
    - tar xvzf wrangler-v1.8.4-x86_64-unknown-linux-musl.tar.gz
    - cd blog.example.com/
    - ../dist/wrangler publish
  artefaktid:
    teed:
      - blog.example.com/public
  ainult:
    - master # see töö mÔjutab ainult 'master' haru
  sildid:
    - gitlab-org-docker #

KĂ€ivitame esimese juurutuse kĂ€sitsi (CI / CD → Torud → KĂ€ivita toru) vĂ”i saates commit'i master harusse. VoilĂ !

KokkuvÔte

TĂ”si, vĂ”ib-olla alahindasin veidi ning kogu protsess vĂ”ttis veidi rohkem kui kĂŒmme minutit. Kuid nĂŒĂŒd on teil kiire sait automaatse juurutamisega ja mitmeid vĂ€rskeid ideid selle kohta, mida veel Workers'iga teha.

 Cloudflare Workers    Hugo    GitLab Ci

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster