K000067 – GitHub Deployment stratégie
KNIFE K000067 – GItHub Deployment stratégie
GUID:
83572f2b-c6d2-4f75-9a41-22457168d71eStatus:backlog· Author: Roman Kazička · License: CC-BY-NC-SA-4.0
🚀 Quickstart
Pre študentov a rýchly štart je k dispozícii skrátený návod, ktorý pomáha rýchlo pochopiť základné kroky nasadenia. Viac informácií nájdete v README pre zvedavých.
- Vytvor repozitár na GitHube.
- Pridaj obsah a použi Branch deploy (
npm install && npm run deploy). - Skontroluj publikovanú stránku v Settings → Pages.
🔎 Porovnanie stratégií
| Kritérium | Stratégia A – Branch deploy | Stratégia B – Actions deploy | Stratégia C – Custom domain |
|---|---|---|---|
| Jednoduchosť | ✅ Najjednoduchšie | ❌ Viac setupu | ➖ DNS krok navyše |
| Stabilita | ✅ Overené a robustné | ✅ Stabilné, auditované | ➖ Závisí od DNS |
| Škálovanie (viac repo) | ✅ Študenti zvládnu | ❌ Každý repo potrebuje init | ❌ Nevhodné pre triedy |
| Profesionálne projekty | ➖ Menej elegantné | ✅ CI/CD audit, pravidlá | ✅ Profesionálne riešenie |
| Vlastná doména | ➖ Nie | ➖ Nie | ✅ Áno |
KNIFE K000067 – GitHub Deployment stratégie
🎯 Čo rieši (účel, cieľ)
GitHub umožňuje jednoduché nasadenie statických webových stránok priamo z repozitára. Tento KNIFE popisuje rôzne stratégie, ako efektívne nasadiť obsah pomocou GitHub Pages, vrátane výhod a nevýhod jednotlivých prístupov.
🧩 Ako to rieši (princíp)
Tento KNIFE rozoberá tri hlavné stratégie nasadenia obsahu na GitHub Pages, podrobne popísané nižšie a v prílohách:
- Stratégia A – Branch deploy: Nasadenie obsahu do určenej vetvy (
gh-pagesalebodocs), kde GitHub Pages automaticky publikuje web. (Pozri Appendix – Makefile) - Stratégia B – Actions deploy: Automatizované nasadenie pomocou GitHub Actions a CI/CD pipeline, ktorá buildne a nasadí web do správnej vetvy. (Pozri Appendix – docusaurus.config.ts)
- Stratégia C – Custom domain: Nastavenie vlastnej domény pre GitHub Pages, vrátane konfigurácie DNS a súboru
CNAME. (Pozri README pre zvedavých)
🧪 Ako to použiť (aplikácia)
- Stratégia A (Branch deploy): Pre jednoduché projekty publikujte obsah priamo do vetvy určenej pre GitHub Pages (
gh-pagesalebodocs). - Stratégia B (Actions deploy): Ak potrebujete automatizované buildy a nasadzovanie (napr. pri používaní Docusaurus, Hugo, atď.), nastavte GitHub Actions na build a deploy do správnej vetvy.
- Stratégia C (Custom domain): Ak chcete používať vlastnú doménu, nakonfigurujte DNS a súbor
CNAMEpodľa návodu.
⚡ Rýchly návod (Top)
- Vytvorte repozitár na GitHub.
- Stratégia A (Branch deploy):
- Pridajte obsah (napr. Markdown alebo HTML) do vetvy
gh-pagesalebodocs. - V nastaveniach GitHub Pages vyberte túto vetvu ako zdroj.
- Pridajte obsah (napr. Markdown alebo HTML) do vetvy
- Stratégia B (Actions deploy):
- Pripravte build skript (napr. Makefile, npm script).
- Nastavte GitHub Actions workflow na build a deploy do
gh-pages.
- Stratégia C (Custom domain):
- Pridajte súbor
CNAMEdo rootu stránky s názvom domény. - Nastavte DNS záznamy podľa GitHub odporúčaní.
- Pridajte súbor
- Počkajte na publikovanie a navštívte výslednú URL.
📜 Detailný článok
GitHub Pages umožňuje hostovať statické weby priamo z GitHub repozitára. Vybrať si môžete z týchto stratégií:
Stratégia A – Branch deploy
Obsah (Markdown, HTML, buildnutý web) sa nasadzuje priamo do určenej vetvy (gh-pages alebo docs). GitHub Pages automaticky publikuje obsah podľa nastavenia v repozitári.
- Konfigurácia:
- Pridajte obsah do správnej vetvy (
gh-pagesalebodocs). - Nastavte v repozitári, ktorá vetva slúži ako zdroj pre Pages.
- Pridajte obsah do správnej vetvy (
- Viac v: Appendix – Makefile
Stratégia B – Actions deploy
Build a nasadenie webu prebieha automatizovane cez GitHub Actions workflow. Po commite sa automaticky spustí build (napr. Docusaurus, Hugo, MkDocs) a výsledok sa nasadí do gh-pages.
- Konfigurácia:
- Pripravte build skript (Makefile, npm run build, atď.).
- Nastavte GitHub Actions workflow na build a deploy.
- Viac v: Appendix – docusaurus.config.ts
Stratégia C – Custom domain
Ak chcete používať vlastnú doménu, je potrebné:
- Pridať súbor
CNAMEs doménou do rootu stránky. - Správne nastaviť DNS záznamy podľa návodu GitHubu.
- Viac v: README pre zvedavých
Pre pravidlá tvorby názvov subdomén pozri Appendix – Naming Convention.
💡 Tipy a poznámky
- Pre rýchle testovanie použite Branch deploy.
- Ak potrebujete vlastný build proces a automatizáciu, použite Actions deploy.
- Pre vlastnú doménu nezabudnite na správne nastavenie DNS a súboru
CNAME. - Pozrite si prílohy pre konkrétne ukážky konfigurácie a workflow.
✅ Hodnota / Zhrnutie
GitHub Pages ponúka flexibilné možnosti nasadenia statických webov – od jednoduchého deployu do vetvy, cez plne automatizované workflow, až po nasadenie na vlastnú doménu. Výber správnej stratégie závisí od vašich potrieb, skúseností a požiadaviek na správu webu. Prílohy obsahujú konkrétne príklady konfigurácie a postupov.