Create deployment.md how-to page covering local preview, GitHub Pages, Netlify, Cloudflare Pages, and generic static hosts. Add cross-links from homepage and getting-started Next Steps. Reference security.md for CSP headers.
1.9 KiB
1.9 KiB
title, description, weight
| title | description | weight |
|---|---|---|
| Deployment | Deploy your sukr site to any static hosting platform | 1 |
sukr builds your site to public/. This directory contains self-contained static HTML, CSS, and assets — no server-side runtime needed. Upload it anywhere that serves static files.
Local Preview
Preview your site locally before deploying:
cd public
python3 -m http.server 8000
Open http://localhost:8000 in your browser.
GitHub Pages
- Push your repository to GitHub
- Build your site:
sukr - Deploy the
public/directory using one of:- GitHub Actions — add a workflow that runs
sukrand deployspublic/to Pages - Manual — push the
public/contents to agh-pagesbranch
- GitHub Actions — add a workflow that runs
Example workflow (.github/workflows/deploy.yml):
name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo install --path .
- run: sukr
- uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
Netlify
- Connect your repository in the Netlify dashboard
- Set build command:
cargo install --path . && sukr - Set publish directory:
public
Netlify detects changes and rebuilds automatically on push.
Cloudflare Pages
- Connect your repository in the Cloudflare Pages dashboard
- Set build command:
cargo install --path . && sukr - Set build output directory:
public
Any Static Host
For any host that serves static files (S3, DigitalOcean Spaces, a VPS):
sukr
rsync -avz public/ user@server:/var/www/mysite/
Or use scp, aws s3 sync, or your host's CLI tool.
Security Headers
sukr outputs zero JavaScript, which means you can set a strict Content Security Policy that blocks all script execution. See Security for recommended CSP headers and platform-specific configuration.