@@ -0,0 +1,40 @@
|
|||||||
|
# timothykim.net
|
||||||
|
|
||||||
|
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://timothykim.net/photo.jpg
|
||||||
|
aws --endpoint-url https://s3.hantim.net s3 sync static/media/ s3://timothykim.net/
|
||||||
|
```
|
||||||
|
|
||||||
|
Media is served at `https://www.timothykim.net/media/`. Reference it in your HTML:
|
||||||
|
|
||||||
|
```html
|
||||||
|
<img src="/media/photo.jpg">
|
||||||
|
```
|
||||||
|
|
||||||
|
## Deploy flow
|
||||||
|
|
||||||
|
Push to `main` triggers `.gitea/workflows/build.yml`:
|
||||||
|
|
||||||
|
1. Build Docker image from this repo
|
||||||
|
2. Push to Gitea container registry
|
||||||
|
3. SSH to server and restart the container
|
||||||
Reference in New Issue
Block a user