1
0
Fork
You've already forked starlight-wiki
0
No description
  • MDX 40.3%
  • JavaScript 35.3%
  • Dockerfile 15.9%
  • TypeScript 8.5%
valentin sentis 7e4a2a524e
All checks were successful
Deploy blog / deploy (push) Successful in 58s
test runner
2026年06月13日 17:49:36 +02:00
.astro changement pour réduire taille et dépendances 2026年04月15日 15:05:03 +02:00
.forgejo/workflows changement gestion tag via github sha 2026年05月31日 23:35:54 +02:00
public changement pour réduire taille et dépendances 2026年04月15日 15:05:03 +02:00
src changement pour réduire taille et dépendances 2026年04月15日 15:05:03 +02:00
.gitignore initialization 2026年04月08日 16:17:56 +02:00
astro-wiki.yaml changement yaml 2026年04月13日 19:18:24 +02:00
astro.config.mjs changement pour réduire taille et dépendances 2026年04月15日 15:05:03 +02:00
Dockerfile changement pour réduire taille et dépendances 2026年04月15日 15:05:03 +02:00
package.json changement pour réduire taille et dépendances 2026年04月15日 15:05:03 +02:00
pnpm-lock.yaml changement pour réduire taille et dépendances 2026年04月15日 15:05:03 +02:00
README.md docs: add project README with setup, build, and deployment guide 2026年04月15日 15:21:46 +02:00
tsconfig.json changement pour réduire taille et dépendances 2026年04月15日 15:05:03 +02:00

starlight-wiki

Wiki statique basé sur Astro Starlight, déployé sur Kubernetes via Forgejo Actions et servi derrière Bunny CDN.

Stack

  • Framework : Astro + Starlight
  • Runtime : Node.js (build) + Nginx (serveur statique)
  • Conteneur : Docker multi-stage
  • Orchestration : k3s / Kubernetes
  • CI/CD : Forgejo Actions
  • CDN : Bunny.net

Développement local

pnpm install
pnpm dev

Le site est accessible sur http://localhost:4321.

Build

pnpm build

Les fichiers statiques sont générés dans le dossier dist/.

Structure du contenu

src/content/docs/
├── index.mdx # Page d'accueil
├── guides/ # Section Guides
└── reference/ # Section Référence (générée automatiquement)

Les pages sont écrites en Markdown ou MDX. Ajouter un fichier dans src/content/docs/ suffit à créer une nouvelle page.

Docker

Build de l'image :

docker build -t astro-wiki:v1 .

L'image utilise un build multi-stage : Node.js pour compiler le site, puis Nginx Alpine pour le servir sur le port 80.

Déploiement

Le déploiement est automatique à chaque push sur main via Forgejo Actions (.forgejo/workflows/deploy.yml) :

  1. Build de l'image Docker
  2. Import de l'image dans k3s
  3. Rollout restart du déploiement astro-wiki dans le namespace apps
  4. Purge du cache Bunny CDN

Le site est exposé à l'adresse https://wiki.jblzz.me via Traefik et cert-manager (Let's Encrypt).

Kubernetes

Le manifest astro-wiki.yaml contient le Deployment, le Service et l'Ingress.

Appliquer manuellement :

kubectl apply -f astro-wiki.yaml