diff --git a/doc/selfhosting/full-stack.md b/doc/selfhosting/full-stack.md index 7167d8d40..edc3c9b30 100644 --- a/doc/selfhosting/full-stack.md +++ b/doc/selfhosting/full-stack.md @@ -59,15 +59,15 @@ EOF mkdir -p puter/config puter/data puter/tls cat > puter/config/config.json < puter/config/config.json < puter/config/config.json < -A *.puter.local → -A puter.sitelocal → -A *.puter.sitelocal → -A puter.hostlocal → -A *.puter.hostlocal → -A puter.applocal → -A *.puter.applocal → -A puter.devlocal → -A *.puter.devlocal → +A puter.localhost → +A *.puter.localhost → +A site.puter.localhost → +A *.site.puter.localhost → +A host.puter.localhost → +A *.host.puter.localhost → +A app.puter.localhost → +A *.app.puter.localhost → +A dev.puter.localhost → +A *.dev.puter.localhost → ``` The wildcards are required — Puter routes via subdomains (`api.*`, `app.*`, etc.) and nginx routes browser S3 traffic via `s3.*` to RustFS. -For local-only testing, add this, and any specific subdomains, your hosts file (`/etc/hosts` on macOS/Linux, `C:\Windows\System32\drivers\etc\hosts` on Windows): - -``` -127.0.0.1 puter.local s3.puter.local api.puter.local puter-app-icons.puter.sitelocal -``` - ## Step 3 — TLS (recommended for public installs) \[Optional\] Skip this for a quick local demo. Don't skip it for users typing passwords. @@ -167,14 +161,14 @@ Skip this for a quick local demo. Don't skip it for users typing passwords. ```bash sudo certbot certonly --manual --preferred-challenges dns \ - -d puter.local -d "*.puter.local" \ - -d puter.sitelocal -d "*.puter.sitelocal" \ - -d puter.hostlocal -d "*.puter.hostlocal" \ - -d puter.applocal -d "*.puter.applocal" \ - -d puter.devlocal -d "*.puter.devlocal" + -d puter.localhost -d "*.puter.localhost" \ + -d site.puter.localhost -d "*.site.puter.localhost" \ + -d host.puter.localhost -d "*.host.puter.localhost" \ + -d app.puter.localhost -d "*.app.puter.localhost" \ + -d dev.puter.localhost -d "*.dev.puter.localhost" ``` -The cert needs to cover `*.puter.local` so that `s3.puter.local` (browser S3 endpoint), plus Puter's own `api.*` / `app.*` subdomains, all validate. +The cert needs to cover `*.puter.localhost` so that `s3.puter.localhost` (browser S3 endpoint), plus Puter's own `api.*` / `app.*` subdomains, all validate. Drop the resulting `fullchain.pem` and `privkey.pem` into `./puter/tls/`.