ProHoster > Blog > Rêveberî > Meriv çawa li ser Malperên Karkerên Cloudflare malperek statîk çêdike
Meriv çawa li ser Malperên Karkerên Cloudflare malperek statîk çêdike
Slav! Navê min Dima ye, ez ji bo tîmê SysOps li Wrike rêberek teknîkî me. Di vê gotarê de ez ê ji we re vebêjim ka meriv çawa di mehê 10 hûrdem û 5 dolaran de malperek bi qasî ku pêkan nêzî bikarhênerê dike û bicîhkirina wê otomatîk dike. Gotar hema bêje tiştek bi pirsgirêkên ku em di nav tîmê xwe de çareser dikin re tune. Ev ji bilî ezmûna kesane û nerînên min ên nasîna teknolojiyek ku ji min re nû ye. Min hewl da ku gavan bi qasî ku gengaz be bi hûrgulî vebêjim da ku rêwerz ji bo kesên xwedî ezmûnên cûda kêrhatî bin. Ez hêvî dikim ku hûn ê kêfxweş bibin. Ajotin!
Ji ber vê yekê, dibe ku we berê rêyek hêsan û erzan dît ku meriv malperek mêvandar bike. Dibe ku belaş jî, wekî ku di vê yekê de tête diyar kiringotara mezin.
Lê ji nişkê ve hûn hîn jî bêzar in û dixwazin dest bidin cîhana nû ya wêrek a teknolojiyê? Ka em bibêjin hûn li ser bicîhkirina otomatîkî difikirin û hûn dixwazin malpera xwe bi qasî ku gengaz bilezînin? Di vê gotarê de em ê bikar bîninHugo, lê ev vebijarkî ye.
Em ji bo otomatê Gitlab CI/CD bikar tînin, lê lezkirinê çi ye? Werin em malperê rasterast bi karanîna Cloudflare-ê bicîh bikinMalperên Karker.
Ger we jixwe Hugo saz kiriye, an ger hûn jeneratorek malpera statîk a cihêreng tercîh dikin (an jî yek carî bikar neynin), wê hingê hûn dikarin vê beşê berdin.
Ka em posta yekem biafirînin: hugo new posts/my-amazing-post.md
Naverok li pelê çêkirî zêde bikin: naveroka/post/my-amazing-post.md. Dema ku her tişt qediya, nirxa pêşnûmeyê biguherînin şaş
Hilberîna pelên statîk: hugo -D
Naha malpera meya statîk di hundurê pelrêçekê de ye ./alenî û ji bo pêşîlêgirtina desta we amade ye.
Beş 2: Sazkirina Cloudflare
Naha em li sazkirina destpêkê ya Cloudflare binêrin. Ka em bihesibînin ku me jixwe domainek ji bo malperê heye. Werin em wek nimûne blog.example.com.
Gav 1: Têketinek DNS-ê biafirînin
Pêşîn, domaina me, û dûv re jî menuya menu hilbijêrin DNS. Em tomara A-blogek çêdikin û ji bo wê hin IP-ya xeyalî destnîşan dikin (ev fermî yepêşnîyar, lê wan dikaribû wê hinekî xweşiktir bikira).
Gav 2: Token Cloudflare
Profîla min -> Nîşaneyên API tab-> Token çêbikin -> Token Xweser biafirînin
Li vir hûn hewce ne ku tokenê bi hesab û deveran sînordar bikin, lê ji bo destûrên ku di wêneyê de têne navnîş kirin vebijarka Biguherîne bihêlin.
Tokenê ji bo pêşerojê hilînin, em ê di beşa sêyemîn de hewce bikin.
Gav 3: Hesab û zonîd bistînin
Domain → Têgihiştinî → [barika milê rastê]
Ev yên min in, ji kerema xwe wan bikar neynin :)
Wan li kêleka tokenê hilînin, em ê di beşa sêyemîn de jî hewceyê wan bin.
Gav 4: Karkeran çalak bikin
Domain → karkerên → Karkeran birêve bibin
Em navek yekta û tarîfek Karker → Bêsînor hilbijêrin (îro mehê 5 $). Ger hûn bixwazin, hûn dikarin paşê nûve bikin guhertoya belaş.
Beş 3: Rakirina yekem (bikaranîna destan)
Min yekem bicîhkirina destan kir da ku bibînim ka bi rastî li wir çi diqewime. Her çend ev hemî hêsantir dikare were kirin:
wrangler saz bikin: npm i @cloudflare/wrangler -g
Ka em biçin pelrêça bloga xwe: cd blog.example.com
Destpêkirina wrangler: wrangler init — site hugo-worker
Ji bo wrangler konfigurasyonek biafirînin (dema ku jê tê pirsîn nîşanê têkevin): wrangler config
Naha em hewl bidin ku di pelê ku nû hatî afirandin de guhertinan bikin wrangler.toml (vir navnîşa tevahî ya mîhengên gengaz):
Diyar bike accountid û zoneid
Gûherrandinî rêk ji bo tiştekî wek *blog.example.com/*
Diyar bikeşaşbo karkerdev
Depoyê biguherînin ./public (an jî cihê ku malpera weya statîk lê ye)
Ger di rê de zêdetirî yek domainê we hebe, wê hingê divê hûn rêça di skrîpta xebatê de rast bikin: karker-malper/index.js (binihêre fonksiyon handleEvent)
Baş e, ew dem e ku hûn malperê bi karanîna tîmê vebikinwrangler publish.
Beş 4: Otomasyona sazkirinê
Ev rêber ji bo Gitlab-ê hatî nivîsandin, lê ew bi gelemperî bingehîn û hêsaniya sazkirina otomatîkî digire.
Gav 1: Projeya me biafirînin û mîheng bikin
Projeyek nû ya GitLab biafirînin û malperê bar bikin: pelrêça blog.example.com digel hemî naverok divê di pelrêça root ya projeyê de cih bigire
Me danîntêgûherr CFAPITOKEN vir Mîhengên → CI / CD → guherbarên
Gav 2: Pelek .gitlab-ci.yml biafirînin û vekirina yekem bimeşînin
Pelê çêbikin .gitlab-ci.yml di kokê de bi naveroka jêrîn:
stages:
- build
- deploy
build:
image: monachus/hugo
stage: build
variables:
GIT_SUBMODULE_STRATEGY: recursive
script:
- cd blog.example.com/
- hugo
artifacts:
paths:
- blog.example.com/public
only:
- master # this job will affect only the 'master' branch
tags:
- gitlab-org-docker #
deploy:
image: timbru31/ruby-node:2.3
stage: deploy
script:
- 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
artifacts:
paths:
- blog.example.com/public
only:
- master # this job will affect only the 'master' branch
tags:
- gitlab-org-docker #
Em danasîna yekem bi destan dest pê dikin (CI/CD → Pipeline → Run Pipeline) an jî bi pabendbûna bi şaxê master. Voila!
encamê
Welê, dibe ku min ew hinekî kêm kiribe, û tevahiya pêvajoyê tenê deh hûrdeman girt. Lê naha we malperek bilez heye ku bi cîhkirina otomatîkî û hin ramanên nû ve girêdayî ye ka hûn dikarin bi Karkeran re çi bikin.