generated from hantim/static-site-template
main
${REPO_NAME}
Static site hosted on the hantim platform.
How it works
Put your HTML, CSS, and JS in static/. Push to main and the site deploys automatically.
Dockerfile
Copies static/ into an nginx:alpine container and applies nginx.conf. The container serves on port 80 — the platform's reverse proxy handles HTTPS and domain routing.
nginx.conf
Per-container HTTP config. Serves files from static/ with clean URLs and aggressive caching for static assets. Edit this to add custom routing, headers, or rewrites.
Media files
Large files (images, videos, etc.) are stored in Garage (S3-compatible object storage), not in this repo.
Upload with the AWS CLI:
aws --endpoint-url https://s3.hantim.net s3 cp photo.jpg s3://${REPO_NAME}/photo.jpg
aws --endpoint-url https://s3.hantim.net s3 sync static/media/ s3://${REPO_NAME}/
Media is served at https://www.${REPO_NAME}/media/. Reference it in your HTML:
<img src="/media/photo.jpg">
Deploy flow
Push to main triggers .gitea/workflows/build.yml:
- Build Docker image from this repo
- Push to Gitea container registry
- SSH to server and restart the container
Description
Languages
Dockerfile
64.7%
HTML
35.3%