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!

Kā izveidot statisku vietni Cloudflare darbinieku vietnēs

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 izmantosim Hugo, bet tas nav obligāti.

Mēs izmantojam Gitlab CI/CD automatizācijai, bet kā ar paātrinājumu? Izvietosim vietni tieÅ”i Cloudflare, izmantojot Darbinieku vietnes.

Kas ir nepiecieŔams, lai sāktu:

1. daļa: Hugo instalÄ“Å”ana

Ja jums jau ir instalēts Hugo vai vēlaties citu statisko vietņu Ä£eneratoru (vai neizmantojat to vispār), varat izlaist Å”o daļu.

  1. Lejupielādējiet Hugo no https://github.com/gohugoio/hugo/releases

  2. Mēs ievietojam Hugo izpildāmo failu atbilstoÅ”i vienam no definētajiem CEĻŠ veidus

  3. Jaunas vietnes izveide: hugo new site blog.example.com

  4. Mainiet paÅ”reizējo direktoriju uz jaunizveidoto: cd blog.example.com

  5. Izvēlieties dizaina tēmu (https://github.com/budparr/gohugo-theme-ananke/releases vai kas cits)

  6. Izveidosim pirmo ziņu: hugo new posts/my-amazing-post.md

  7. Pievienojiet izveidotajam failam saturu: content/posts/my-amazing-post.md.
    Kad viss ir izdarīts, mainiet melnraksta vērtību uz nepatiess

  8. 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ālais ieteikums, bet viņi varēja padarīt to nedaudz skaistāku).

Kā izveidot statisku vietni Cloudflare darbinieku vietnēs

2. darbÄ«ba: Cloudflare marÄ·ieris

  1. mans profils -> API marķieri cilne-> Izveidot marķieri -> Izveidojiet pielāgotu marķieri

Kā izveidot statisku vietni Cloudflare darbinieku vietnēs

Š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]

Kā izveidot statisku vietni Cloudflare darbinieku vietnēsŠīs ir manas, lūdzu, neizmantojiet :)

Saglabājiet tos blakus žetonam, mums tie būs nepiecieŔami arī treŔajā daļā.

4. darbība: aktivizējiet darbiniekus

Domēns ā†’ Strādnieki ā†’ Pārvaldiet darbiniekus

Mēs izvēlamies unikālu nosaukumu un tarifu Workers ā†’ Unlimited (Å”odien 5 USD mēnesÄ«). Ja vēlaties, vēlāk varat jaunināt uz bezmaksas versiju.

3. daļa: Pirmā izvietoÅ”ana (manuālā izvietoÅ”ana)

Es veicu pirmo manuālo izvietoŔanu, lai uzzinātu, kas tur īsti notiek. Lai gan to visu var izdarīt vienkārŔāk:

  1. Instalējiet wrangler: npm i @cloudflare/wrangler -g

  2. Dosimies uz mūsu emuāra direktoriju: cd blog.example.com

  3. Palaist wrangler: wrangler init ā€” site hugo-worker

  4. 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):

  1. Norādiet accountid un zoneid

  2. Mainīt marŔruts uz kaut ko līdzīgu *blog.example.com/*

  3. Norādiet nepatiess par darbiniekidev

  4. Mainīt segmentu uz ./public (vai kur atrodas jūsu statiskā vietne)

  5. 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 komandu wrangler 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

  1. Izveidojiet jaunu GitLab projektu un augÅ”upielādējiet vietni: direktorijs blog.example.com ar visu saturu jāatrodas projekta saknes direktorijā

  2. Mēs uzstādÄ«jām mainÄ«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.

 Cloudflare darbinieki    Hugo    GitLab Ci

Avots: www.habr.com

Pievieno komentāru