Jednostránkový rozcestník pro doménu jancejka.cz odkazující na:
- saman.jancejka.cz — Šamanismus & Léčení
- dev.jancejka.cz — Vývoj & Portfolio
- vedome-uzdraveni.cz — Vědomé uzdravení
- renomio.cz — Renomio
- Astro 6 — statický generátor, nulový JS na klientu
- Tailwind CSS v4 — přes PostCSS (
@tailwindcss/postcss) - Geist Sans — self-hosted variable font
- BusyBox httpd — minimální HTTP server v Docker obrazu
- caddy-docker-proxy — TLS a reverse proxy
npm install
npm run dev # http://localhost:4321
npm run build # výstup do dist/
npm run preview # preview buildudocker build -t jancejka-cz .
docker run -p 8080:80 jancejka-cz
# http://localhost:8080Každý push do větve main spustí GitHub Actions workflow (.github/workflows/docker.yml), který:
- Sestaví Docker obraz z
Dockerfile - Pushne ho do GitHub Container Registry jako:
ghcr.io/<owner>/<repo>:latestghcr.io/<owner>/<repo>:sha-<commit>
Autentizace probíhá automaticky přes GITHUB_TOKEN — žádný secret není potřeba nastavovat ručně.
Předpoklady na serveru:
- Docker + Docker Compose
- běžící
lucaslorentz/caddy-docker-proxyna externí sítifrontend-proxy
echo $CR_PAT | docker login ghcr.io -u <github-username> --password-stdinCR_PAT je GitHub Personal Access Token s oprávněním read:packages.
# Nastav správné jméno obrazu
export GITHUB_REPOSITORY=<owner>/<repo>
docker compose pull
docker compose up -dNebo uprav image: přímo v compose.yml a spusť bez proměnné.
docker compose pull
docker compose up -d --remove-orphansDoména jancejka.cz musí mířit na server. Caddy zajistí TLS certifikát automaticky přes Let's Encrypt.
| Záznam | Typ | Hodnota |
|---|---|---|
@ |
A | <IP serveru> |
www |
CNAME | jancejka.cz |
Pro www redirect přidej do compose.yml labels:
caddy: "jancejka.cz www.jancejka.cz"
caddy.@www.host: www.jancejka.cz
caddy.redir: "@www https://jancejka.cz{uri} permanent"
caddy.reverse_proxy: "{{upstreams 80}}"
caddy.encode: gzip├── .github/workflows/docker.yml # CI/CD pipeline
├── public/fonts/ # Geist Sans Variable (self-hosted)
├── src/
│ ├── styles/global.css # Tailwind + šamanská paleta + @font-face
│ └── pages/index.astro # celá stránka
├── compose.yml # Docker Compose pro produkci
├── Dockerfile # multi-stage: node:22-alpine → busybox:musl
└── postcss.config.mjs # Tailwind v4 přes PostCSS
Konzistentní s saman.jancejka.cz:
| Proměnná | Hex | Použití |
|---|---|---|
--color-ritual |
#c2813a |
zlatý jantar — karta Saman |
--color-mystic |
#7055a8 |
fialová — karta Dev |
--color-sage |
#4e7969 |
šalvějová — rezerva |
--color-copper |
#9c5535 |
měděná — rezerva |