---
title: "Hugo na OSCloud: Statický web bez kompromisů"
date: 2026-07-04
draft: false
description: "Jak rozjet statický web s Hugo na platformě OSCloud..."
categories: ["Návody"]
tags: ["Hugo", "OSCloud", "Cloudron", "Surfer", "LAMP", "statický web", "self-hosting"]
image: "featured.jpg"
author: "archos"
---
![Hugo na OSCloud](featured.png)

WordPress nám sloužil roky a pro spoustu projektů je skvělá volba. Pro náš technický blog o Arch Linuxu jsme ale hledali něco bližšího naší filozofii — psát články v Markdownu, verzovat v Gitu a mít web pod plnou kontrolou bez zbytečné komplexity.

Přešli jsme na [Hugo](https://gohugo.io/) — statický generátor napsaný v Go, který z Markdownu vytvoří kompletní web za zlomek sekundy. Žádné PHP, žádná databáze, žádné bezpečnostní díry. A celé to běží na [OSCloud](https://oscloud.cz).

## Co je Hugo?

Hugo je open-source generátor statických webů. Místo toho, aby server při každém požadavku tahal data z databáze a skládal stránku za běhu (jako WordPress), Hugo vygeneruje všechny HTML soubory předem. Výsledek je jednoduchá složka souborů, kterou hodíte na jakýkoliv webserver.

Co to znamená v praxi:

- **Rychlost** — stránky se načítají okamžitě, protože server jen servíruje hotové soubory
- **Bezpečnost** — žádný PHP interpret, žádná databáze = žádný útočný vektor
- **Jednoduchost** — články píšete v Markdownu, verzujete v Gitu
- **Nulová údržba** — žádné aktualizace pluginů, žádné padající databáze

Hugo má přes 88 000 hvězd na GitHubu a aktivní komunitu. Podporuje témata, vícejazyčnost, taxonomie, RSS, vyhledávání a spoustu dalšího.

## Co je OSCloud?

[OSCloud](https://oscloud.cz) je česká cloudová platforma zaměřená na soukromí a open source.
OSCloud nabízí hosting open-source aplikací jako alternativu ke komerčním cloudům.
Najdete tu Nextcloud, Matrix, PeerTube, Gitea, GoToSocial,Mastodon, Pixelfed, VHSky a desítky dalších služeb. A taky hosting webů — WordPress, LAMP, Grav nebo **Surfer** pro statické weby.

Pro hosting Hugo webu máte na OSCloud dvě varianty: **Surfer** a **LAMP**. Každá se hodí na něco jiného.

## Varianta 1: Surfer — jednoduchý statický hosting

Surfer je minimalistická Cloudron aplikace pro servírování statických souborů. Nic víc, nic míň. Nahrajete soubory a web běží — žádný Apache, žádný nginx config.

Surfer nabízí:

- **Webové rozhraní** pro správu souborů na `https://vasedomena.cz/_admin/`
- **CLI nástroj** pro nahrávání z terminálu
- **SFTP přístup** pro nahrávání přes FileZilla nebo příkazovou řádku
- **WebDAV** endpoint
- **Vlastní 404 stránka** — stačí nahrát `404.html` do kořene
- **Řízení přístupu** — veřejný, heslem chráněný, nebo jen pro přihlášené uživatele

**Surfer je ideální když:** chcete prostě hodit Hugo web na server a nic víc neřešit.

**Surfer nestačí když:** potřebujete server-side redirecty (`.htaccess`), servírovat soubory z tečkových složek (`.well-known`) nebo třeba Fediverse webfinger identitu.

## Varianta 2: LAMP — když potřebujete víc

LAMP aplikace na Cloudronu dává plný Apache s podporou `.htaccess`. Hugo web na něm běží úplně stejně — Apache servíruje statické soubory bez problémů — ale navíc můžete:

- Nastavit **redirecty a rewrite pravidla** přes `.htaccess`
- Servírovat obsah z **`.well-known`** složky (webfinger, Let's Encrypt verifikace)
- Propojit web s **Fediverse** — například redirect `@arch@arch-linux.cz` na GoToSocial instanci

Právě proto tento web (arch-linux.cz) běží na LAMP — potřebujeme webfinger redirect pro naši Fediverse identitu `@arch@arch-linux.cz`.

**LAMP zvolte když:** potřebujete cokoliv nad rámec prostého servírování souborů.

## Krok za krokem: Hugo web na OSCloud

### 1. Instalace Hugo

Na Arch Linuxu:

```bash
sudo pacman -S hugo
hugo version
```

Na Ubuntu/Debianu:

```bash
sudo apt install hugo
```

Nebo stáhněte nejnovější verzi z [GitHubu](https://github.com/gohugoio/hugo/releases).

### 2. Vytvoření projektu

```bash
hugo new site muj-web
cd muj-web
git init
```

### 3. Přidání tématu

Můžete použít libovolné téma z [themes.gohugo.io](https://themes.gohugo.io/). My používáme [Blowfish](https://blowfish.page/), ale pro začátek je dobré třeba Ananke:

```bash
git submodule add https://github.com/gohugo-ananke/ananke themes/ananke
echo 'theme = "ananke"' >> hugo.toml
```

### 4. Základní konfigurace

Upravte `hugo.toml`:

```toml
baseURL = "https://vasedomena.cz/"
languageCode = "cs"
title = "Můj web"
theme = "ananke"
```

### 5. První článek

```bash
hugo new posts/prvni-clanek/index.md
```

Otevřete `content/posts/prvni-clanek/index.md` a napište obsah v Markdownu:

```markdown
---
title: "Můj první článek"
date: 2026-07-04
draft: false
description: "Zkušební článek na Hugo webu"
tags: ["hugo", "test"]
---

Tady je obsah článku v **Markdownu**.

## Podnadpis

- položka jedna
- položka dvě
```

Obrázky k článku umístěte do stejné složky (`content/posts/prvni-clanek/`) a v textu je vložte:

```markdown
![Popis obrázku](obrazek.jpg)
```

### 6. Lokální náhled

```bash
hugo server -D
```

Otevřete `http://localhost:1313` v prohlížeči. Hugo sleduje změny a automaticky stránku obnovuje.

### 7. Build

```bash
hugo --minify
```

Výsledné soubory najdete ve složce `public/`. To je váš kompletní web — čisté HTML, CSS a JavaScript.

### 8. Nasazení na OSCloud

Deploy záleží na tom, kterou aplikaci jste si zvolili.

**Pro Surfer — CLI:**

```bash
# instalace CLI
npm -g install cloudron-surfer

# konfigurace
surfer config --server https://vasedomena.cz --token VAS_API_TOKEN

# nahrání souborů
surfer put public/* /
```

API token vytvoříte v Surfer admin rozhraní (`https://vasedomena.cz/_admin/`) v sekci Settings.

**Pro Surfer — SFTP:**

```bash
lftp -p 222 -u "vas_uzivatel" sftp://vas-server.oscloud.cz
> mirror -R public/ /
> quit
```

**Pro Surfer — webové rozhraní:**

Přetáhněte soubory do správce na `https://vasedomena.cz/_admin/`.

**Pro LAMP — SFTP:**

```bash
lftp -p 222 -u "vas_uzivatel" sftp://vas-server.oscloud.cz
> mirror -R public/ /public/
> quit
```

U LAMP aplikace je SFTP root `/app/data/`, takže cílová složka je `/public/`.

Pokud potřebujete `.htaccess`, nahrajte ho do složky `static/` v Hugo projektu — Hugo ho zkopíruje do `public/` při buildu a SFTP ho nahraje na server.

### 9. Automatizace (volitelné)

Celý deploy se dá zabalit do jednoho skriptu:

```bash
#!/bin/bash
# deploy.sh
hugo --minify
surfer put public/* /
echo "Nasazeno!"
```

```bash
sudo bash ./deploy.sh
```

Pro LAMP variantu nahraďte `surfer put` za odpovídající `lftp` příkaz.

## WordPress vs Hugo

WordPress i Hugo mají své místo. Tady je srovnání, proč jsme se pro náš konkrétní případ rozhodli jinak:

| | WordPress | Hugo |
|---|---|---|
| Načítání | závisí na cachingu | okamžité |
| Bezpečnost | pravidelné záplaty | žádný vektor |
| Údržba | pluginy, jádro | žádná |
| Zálohy | DB + soubory | Git repo |
| Obsah | WYSIWYG editor | Markdown |
| Verzování | nepraktické | Git nativně |
| Server | PHP + MySQL | statický |

WordPress je výborný pro weby s e-shopem, členskou sekcí nebo tam, kde obsah spravují netechničtí uživatelé přes přehledné admin rozhraní. Pro blog, kde články píšeme v terminálu a verzujeme v Gitu, nám Hugo prostě sedl líp.

## Závěr

Hugo na OSCloud je kombinace, která dává smysl. Rychlý, bezpečný a jednoduchý web bez zbytečné komplexity. Články píšete v Markdownu, verzujete v Gitu a nasadíte jedním příkazem.

Pro jednoduchý statický web sáhněte po **Surferu**. Pokud potřebujete redirecty, `.well-known` nebo Fediverse integraci, zvolte **LAMP** — obojí na OSCloud funguje skvěle.

Pokud vás zajímá self-hosting a chcete mít svá data pod kontrolou, mrkněte na [OSCloud](https://oscloud.cz) — českou platformu postavenou na open-source technologiích. Kromě hostingu webů nabízí Nextcloud, Matrix chat, PeerTube, Gitea a další služby.

Zdrojový kód tohoto webu je veřejně dostupný na naší [Gitea](https://git.arch-linux.cz/ArchlinuxCz/web-archlinux_cz) — pull requesty vítány.

---

*Máte otázky? Napište nám na [Fediverse](https://gts.arch-linux.cz/@arch), [Matrix](https://matrix.to/#/#archlinuxcz:matrix.org) nebo na [fórum](https://forum.arch-linux.cz/).*
