Si të krijoni një faqe statike në Cloudflare Workers Sites

Përshëndetje! Emri im është Dima, unë jam lider teknik i ekipit SysOps në Wrike. Në këtë artikull do të flas si mund të krijoni një faqe interneti sa më të madhe për përdoruesin brenda 10 minutash dhe me 5 dollarë në muaj dhe të automatizoni shpërndarjen e saj. Artikulli ka pothuajse asnjë lidhje me problemet që ne zgjidhim brenda ekipit tonë. Është, më shumë, përvoja ime personale dhe përshtypjet nga njohja me një teknologji të re për mua. Kam përpjekur të përshkruaj hapat sa më hollësisht në mënyrë që udhëzimi të jetë i dobishëm për njerëz me përvoja të ndryshme. Shpresoj se do t'ju pëlqejë. Le të fillojmë!

Si të krijoni një faqe statike në Cloudflare Workers Sites

Pra, ndoshta tashmë keni gjetur një mënyrë të thjeshtë dhe të lirë për të hostuar faqen tuaj të internetit. Mund të jetë madje edhe falas, siç përshkruhet në këtë artikull të mrekullueshëm.

Por ndoshta ju ndiheni akoma të mërzitur dhe dëshironi të prekni botën e mrekullueshme të teknologjisë? Të themi se po mendoni për automatizimin e shpërndarjes dhe do të dëshironit ta përshpejtoni sa më shumë faqen tuaj? Në këtë artikull do të përdorim Hugo, por nuk është e domosdoshme.

Për automatizimin ne përdorim Gitlab CI/CD, por çfarë të bëjmë për përshpejtimin? Le të shpërndajmë faqen direkt në Cloudflare me ndihmën e Worker Sites.

Çfarë kërkohet për të filluar:

Nëse tashmë keni instaluar Hugo ose nëse preferoni një gjenerator tjetër të faqeve statike (ose madje nuk i përdorni fare), atëherë mund ta anashkaloni këtë pjesë.

Shkarkoni Hugo nga

  1. Vendosni skedarin ekzekutiv të Hugo në një nga rrugët e përcaktuara në https://github.com/gohugoio/hugo/releases

  2. PATH për rrugët

  3. Krijoni një faqe të re: hugo new site blog.example.com

  4. Ndryshoni direktorinë aktuale në atë që sapo u krijua: cd blog.example.com

  5. Zgjidhni temën e dizajnit (https://github.com/budparr/gohugo-theme-ananke/releases ose çfarëdo tjetër)

  6. Krijoni postimin e parë: hugo new posts/my-amazing-post.md

  7. Shtoni përmbajtje në skedarin e krijuar: content/posts/my-amazing-post.md.
    Kur gjithçka të jetë përfunduar, ndryshoni vlerën e draft në false

  8. Gjeneroni skedarët statikë: hugo -D

Tani faqja jonë statike ndodhet brenda drejtorisë ./public dhe është e gatshme për shpërndarjen e saj të parë manuale.

Pjesa 2: Konfiguroni Cloudflare

Tani le të kuptojmë konfigurimin fillestar të Cloudflare. Le të supozojmë se domeni për faqen tonë tashmë e kemi. Si një shembull do të marrim blog.example.com.

Hapi 1: Krijoni një regjistër DNS

Së pari zgjidhni domenin tonë dhe pastaj pikën e menusë DNS. Krijoni një regjistër A për blog dhe tregoni një IP të ndonjë fiktive (kjo është një rekomandim zyrtar, por ata mund ta kishin bërë më ndryshe).

Si të krijoni një faqe statike në Cloudflare Workers Sites

Hapi 2: Tokeni i Cloudflare

  1. Profili Im -> Tokenet e API tab-> Krijo Token -> Krijo Token të Personalizuara

Si të krijoni një faqe statike në Cloudflare Workers Sites

Këtu do t'ju duhet të kufizoni tokenin me llogaritë dhe zonat, por të lini mundësinë Edit për lejet që shihni në imazh.

Ruani tokenin për të ardhmen, do të na nevojitet në pjesën e tretë.

Hapi 3: Marrim accountid dhe zoneid

Domain Përmbledhje → [paneli i djathtë]

Si të krijoni një faqe statike në Cloudflare Workers SitesKëto janë të miat, mos i përdorni ju lutem 🙂

Ruani ato pranë tokenit, do t'ju nevojiten gjithashtu në pjesën e tretë.

Hapi 4: Aktivizimi i Workers

Domain Pune Menaxho Workers

Zgjidhni një emër unik dhe planin e Workers → Unlimited (5$ në muaj aktualisht). Nëse dëshiron, më vonë mund të kaloni në versionin falas.

Pjesa 3: Deploy-i i Parë (shpërndarja manuale)

E bëra deploy-in e parë manualisht për të kuptuar se çfarë po ndodhte vërtet. Megjithatë, gjithçka mund të bëhet më thjeshtë:

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

  2. Kaloni në direktorinë e blogut tonë: cd blog.example.com

  3. Start wrangler: wrangler init — site hugo-worker

  4. Krijoni konfigurimin për wrangler (jepni tokenin kur t'ju kërkohet): wrangler config

Tani do të provojmë të bëjmë ndryshime në skedarin e sapokrijuar wrangler.toml (këtu lista e plotë e konfigurimeve të mundshme):

  1. Specifikoni accountid dhe zoneid

  2. Ndryshoni rrugën në diçka si *blog.example.com/*

  3. Specifikoni false për workersdev

  4. Ndryshoni bucket-in në . /public (ose ku ndodhet faqja juaj statike)

  5. Nëse keni më shumë se një domain në rrugë, ju duhet të korrigjoni rrugën në skriptin e punës: workers-site/index.js (shihni funksionin handleEvent)

Shumë mirë, është koha të shpërndajmë faqen me komandën wrangler publish.

Pjesa 4: Automatizimi i shpërndarjes

Këto udhëzime janë përgatitur për Gitlab, por ato përçojnë thelbin dhe thjeshtësinë e shpërndarjes automatizuar në përgjithësi.

Hapi 1: Krijoni dhe konfiguroni projektin tonë

  1. Krijoni një projekt të ri GitLab dhe ngarkoni faqen: direktoria blog.example.com me të gjithë përmbajtjen duhet të jetë në katalogun rrënjë të projektit

  2. Caktoni variablin CFAPITOKEN këtu: Settings CI/CDVariablat

Hapi 2: Krijoni skedarin .gitlab-ci.yml dhe filloni shpërndarjen e parë

Krijojmë skedarin .gitlab-ci.yml në rrënjë me përmbajtjen e mëposhtme:

etapat:
  - ndërtim
  - implementim

ndërtim:
  imazhi: monachus/hugo
  etapa: ndërtim
  variablat:
    GIT_SUBMODULE_STRATEGY: recursive
  skripti:
    - cd blog.example.com/
    - hugo
  artefaktet:
    rrugët:
      - blog.example.com/public
  vetëm:
    - master # ky punim do të ndikojë vetëm në degën 'master'
  etiketat:
    - gitlab-org-docker #


implementim:
  imazhi: timbru31/ruby-node:2.3
  etapa: implementim
  skripti:
    - 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
  artefaktet:
    rrugët:
      - blog.example.com/public
  vetëm:
    - master # ky punim do të ndikojë vetëm në degën 'master'
  etiketat:
    - gitlab-org-docker #

Nisni implementimin e parë manualisht (CI / CD Pipeline Ekzekutoni Pipeline) apo duke dërguar një commit në degën master. Voilà!

Përfundim

Mund të kem paksa nënvlerësuar, dhe e gjithë procesi zgjati pak më shumë se dhjetë minuta. Tani keni një faqe të shpejtë me implementim automatik dhe disa ide të reja për atë që mund të bëni me ndihmën e Workers.

 Cloudflare Workers    Hugo    GitLab Ci

Burimi: habr.com

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster