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ë!

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ë.
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, 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.
Çfarë kërkohet për të filluar:
Gitlab (e juaja ose )
në Cloudflare
Node.js/npm të instaluar
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
Vendosni skedarin ekzekutiv të Hugo në një nga rrugët e përcaktuara në
PATH rrugët
Krijoni një faqe të re:
hugo new site blog.example.comNdryshoni direktorinë aktuale në atë që sapo u krijua:
cd blog.example.comZgjidhni temën e dizajnit ( ose çfarëdo tjetër)
Krijoni postimin e parë:
hugo new posts/my-amazing-post.mdShtoni 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ë falseGjeneroni 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ë, por ata mund ta kishin bërë më ndryshe).

Hapi 2: Tokeni i Cloudflare
Profili Im -> Tokenet e API tab-> Krijo Token -> Krijo Token të Personalizuara

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ë]
Kë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ë:
Instaloni wrangler:
npm i @cloudflare/wrangler -gKaloni në direktorinë e blogut tonë:
cd blog.example.comStart wrangler:
wrangler init — site hugo-workerKrijoni 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 ( lista e plotë e konfigurimeve të mundshme):
Specifikoni accountid dhe zoneid
Ndryshoni rrugën në diçka si *blog.example.com/*
Specifikoni false për workersdev
Ndryshoni bucket-in në . /public (ose ku ndodhet faqja juaj statike)
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ë
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
Caktoni variablin CFAPITOKEN këtu: Settings → CI/CD → Variablat
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.
Burimi: habr.com
