Architecture
Architecture
Pipeline
graph LR
A[Git Push] --> B[GitLab CI]
B --> C[Hugo Build]
C --> D[rsync Deploy]
D --> E[Scaleway VM]
E --> F[Caddy HTTPS]
Stack
| Component | Tool | Purpose |
|---|---|---|
| Static site generator | Hugo 0.159.0 | Markdown → HTML |
| CI/CD | GitLab CI | Build and deploy |
| Web server | Caddy 2.11.2 | Serve with auto-HTTPS |
| VM | Scaleway DEV1-S | Hosting |
| DNS | Cloudflare | Domain management |
How Deployment Works
- Developer pushes to
mainbranch - GitLab CI triggers the pipeline
- Build stage: Hugo compiles markdown to static HTML
- Deploy stage:
rsynccopies the built site to the VM over SSH - Caddy serves the files with automatic TLS certificates from Let’s Encrypt
Caddyfile
dev.jwbo.io {
root * /var/www/hugo
file_server
}