migrate from astro+netlify to tanstack start + self-hosted
Replace the Astro static site with a TanStack Start (Bun runtime) app and add Dockerfile + compose files so the site can be served from home-main-2 behind the home-reverse-proxy-1 Caddy instead of Netlify. CI workflow rewritten to build a container image and SSH-deploy to the home host.
This commit is contained in:
@@ -1,13 +1,36 @@
|
||||
# Astro with Tailwind
|
||||
# @unom/website
|
||||
|
||||
The unom.io marketing site. TanStack Start + Bun, deployed to home-main-2.
|
||||
|
||||
## Development
|
||||
|
||||
```sh
|
||||
bun create astro@latest -- --template with-tailwindcss
|
||||
bun install
|
||||
bun run dev
|
||||
```
|
||||
|
||||
[](https://stackblitz.com/github/withastro/astro/tree/latest/examples/with-tailwindcss)
|
||||
[](https://codesandbox.io/p/sandbox/github/withastro/astro/tree/latest/examples/with-tailwindcss)
|
||||
[](https://codespaces.new/withastro/astro?devcontainer_path=.devcontainer/with-tailwindcss/devcontainer.json)
|
||||
Visit <http://localhost:3000>.
|
||||
|
||||
Astro comes with [Tailwind](https://tailwindcss.com) support out of the box. This example showcases how to style your Astro project with Tailwind.
|
||||
## Production
|
||||
|
||||
For complete setup instructions, please see our [Tailwind Integration Guide](https://docs.astro.build/en/guides/integrations-guide/tailwind).
|
||||
The repo is built into a container image (`git.unom.io/unom/website`) by Gitea
|
||||
Actions on push to `main`, then deployed via SSH to `home-main-2`. The
|
||||
container listens on port 3000 inside the network and is exposed on host port
|
||||
3200, which Caddy on `home-reverse-proxy-1` reverse-proxies for unom.io and
|
||||
www.unom.io.
|
||||
|
||||
Run the production image locally:
|
||||
|
||||
```sh
|
||||
docker compose -f compose.production.yml pull
|
||||
docker compose -f compose.production.yml up -d
|
||||
```
|
||||
|
||||
## Required CI secrets
|
||||
|
||||
Set on the `unom/website` repo in Gitea Actions:
|
||||
|
||||
| Secret | Purpose |
|
||||
| ------ | ------- |
|
||||
| `REGISTRY_USER` / `REGISTRY_TOKEN` | Push to `git.unom.io` container registry |
|
||||
| `DEPLOY_HOST` / `DEPLOY_USER` / `DEPLOY_PORT` / `DEPLOY_SSH_KEY` | SSH target on home-main-2 (private key matching the `unom-ci-deploy` authorized key) |
|
||||
|
||||
Reference in New Issue
Block a user