KÄ izveidot statisku vietni Cloudflare darbinieku vietnÄs
Sveiki! Mani sauc Dima, es esmu Wrike SysOps komandas tehniskais vadÄ«tÄjs. Å ajÄ rakstÄ pastÄstÄ«Å”u, kÄ 10 minÅ«tÄs un 5 dolÄros mÄnesÄ« izveidot vietni pÄc iespÄjas tuvÄk lietotÄjam un automatizÄt tÄs izvietoÅ”anu. Rakstam nav gandrÄ«z nekÄda sakara ar problÄmÄm, kuras risinÄm mÅ«su komandÄ. TÄ drÄ«zÄk ir mana personÄ«gÄ pieredze un iespaidi, iepazÄ«stot man jaunu tehnoloÄ£iju. Es centos pÄc iespÄjas detalizÄtÄk aprakstÄ«t darbÄ«bas, lai norÄdÄ«jumi bÅ«tu noderÄ«gi cilvÄkiem ar dažÄdu pieredzi. Es ceru, ka jums patiks. Aiziet!
TÄtad, iespÄjams, jÅ«s jau esat atradis vienkÄrÅ”u un lÄtu veidu, kÄ mitinÄt vietni. VarbÅ«t pat bez maksas, kÄ aprakstÄ«ts Å”ajÄlielisks raksts.
Bet pÄkÅ”Åi jums joprojÄm ir garlaicÄ«gi un vÄlaties pieskarties drosmÄ«gajai tehnoloÄ£iju pasaulei? PieÅemsim, ka domÄjat par izvietoÅ”anas automatizÄciju un vÄlaties pÄc iespÄjas paÄtrinÄt savu vietni? Å ajÄ rakstÄ mÄs izmantosimHugo, bet tas nav obligÄti.
MÄs izmantojam Gitlab CI/CD automatizÄcijai, bet kÄ ar paÄtrinÄjumu? Izvietosim vietni tieÅ”i Cloudflare, izmantojotDarbinieku vietnes.
Izveidosim pirmo ziÅu: hugo new posts/my-amazing-post.md
Pievienojiet izveidotajam failam saturu: content/posts/my-amazing-post.md. Kad viss ir izdarÄ«ts, mainiet melnraksta vÄrtÄ«bu uz nepatiess
Statisku failu Ä£enerÄÅ”ana: hugo -D
Tagad mÅ«su statiskÄ vietne atrodas direktorijÄ ./publisks un gatavs pirmajai manuÄlajai izvietoÅ”anai.
2. daļa: Cloudflare iestatīŔana
Tagad apskatÄ«sim sÄkotnÄjo Cloudflare iestatÄ«Å”anu. PieÅemsim, ka mums jau ir vietnes domÄns. Å emsim par piemÄru blog.example.com.
1. darbība: izveidojiet DNS ierakstu
Vispirms atlasiet mÅ«su domÄnu un pÄc tam izvÄlnes vienumu DNS. MÄs izveidojam emuÄra A ierakstu un norÄdÄm tam kÄdu fiktÄ«vu IP (tas ir oficiÄlaisieteikums, bet viÅi varÄja padarÄ«t to nedaudz skaistÄku).
2. darbība: Cloudflare marķieris
mans profils -> API marÄ·ieri cilne-> Izveidot marÄ·ieri -> Izveidojiet pielÄgotu marÄ·ieri
Å eit jums bÅ«s jÄierobežo marÄ·ieris ar kontiem un zonÄm, bet jÄatstÄj opcija RediÄ£Ät attÄlÄ norÄdÄ«tajÄm atļaujÄm.
SaglabÄjiet tokenu nÄkotnei, mums tas bÅ«s nepiecieÅ”ams treÅ”ajÄ daļÄ.
3. darbība: iegūstiet accountid un zoneid
DomÄns ā PÄrskats ā [labÄ sÄnjosla]
Šīs ir manas, lūdzu, neizmantojiet :)
SaglabÄjiet tos blakus žetonam, mums tie bÅ«s nepiecieÅ”ami arÄ« treÅ”ajÄ daļÄ.
Es veicu pirmo manuÄlo izvietoÅ”anu, lai uzzinÄtu, kas tur Ä«sti notiek. Lai gan to visu var izdarÄ«t vienkÄrÅ”Äk:
InstalÄjiet wrangler: npm i @cloudflare/wrangler -g
Dosimies uz mÅ«su emuÄra direktoriju: cd blog.example.com
Palaist wrangler: wrangler init ā site hugo-worker
Izveidojiet wrangler konfigurÄciju (ievadiet marÄ·ieri, kad tiek prasÄ«ts): wrangler config
Tagad mÄÄ£inÄsim veikt izmaiÅas jaunizveidotajÄ failÄ wrangler.toml (Å”eit pilns iespÄjamo iestatÄ«jumu saraksts):
NorÄdiet accountid un zoneid
Mainīt marŔruts uz kaut ko līdzīgu *blog.example.com/*
NorÄdietnepatiesspar darbiniekidev
MainÄ«t segmentu uz ./public (vai kur atrodas jÅ«su statiskÄ vietne)
Ja ceÄ¼Ä ir vairÄk nekÄ viens domÄns, jums vajadzÄtu labot ceļu darba skriptÄ: Workers-site/index.js (skatÄ«t funkciju rokturisNotikums)
Lieliski, ir pienÄcis laiks izvietot vietni, izmantojot komanduwrangler publish.
4. daļa: IzvÄrÅ”anas automatizÄcija
Å Ä« rokasgrÄmata ir rakstÄ«ta Gitlab, taÄu tajÄ ir atspoguļota automatizÄtÄs izvietoÅ”anas bÅ«tÄ«ba un vienkÄrŔība kopumÄ.
1. darbÄ«ba. Izveidojiet un konfigurÄjiet mÅ«su projektu
Izveidojiet jaunu GitLab projektu un augÅ”upielÄdÄjiet vietni: direktorijs blog.example.com ar visu saturu jÄatrodas projekta saknes direktorijÄ
MÄs uzstÄdÄ«jÄmmainÄ«gs CFAPITOKEN Å”eit: Settings ā CI / CD ā MainÄ«gie
2. darbība. Izveidojiet .gitlab-ci.yml failu un palaidiet pirmo izvietoŔanu
Izveidojiet failu .gitlab-ci.yml saknÄ ar Å”Ädu saturu:
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 #
MÄs palaižam pirmo izvietoÅ”anu manuÄli (CI/CD ā Cauruļvadi ā Palaist cauruļvadu) vai apÅemoties uz galveno filiÄli. Voila!
SecinÄjums
IespÄjams, es to nedaudz novÄrtÄju par zemu, un viss process aizÅÄma nedaudz vairÄk par desmit minÅ«tÄm. Bet tagad jums ir Ätra vietne ar automÄtisku izvietoÅ”anu un dažas jaunas idejas par to, ko vÄl varat darÄ«t ar Workers.