deploy: one-command scripts to build+run from deploy/.env
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
# deploy/
|
||||
|
||||
Holds the **live secrets** (`deploy/.env`) and one-command scripts to build and run the stack against them. `deploy/.env` is git-ignored — it is never committed.
|
||||
|
||||
## deploy/.env
|
||||
|
||||
Required keys (see `../.env.example` for the template):
|
||||
|
||||
```
|
||||
POSTGRES_PASSWORD=...
|
||||
GOOGLE_CLIENT_ID=...
|
||||
GOOGLE_CLIENT_SECRET=...
|
||||
AI_MODE=Disabled # Disabled | LocalOllama | CloudOpenAi
|
||||
FRONTEND_ORIGIN=http://localhost:8081
|
||||
```
|
||||
|
||||
## Commands
|
||||
|
||||
Windows (PowerShell), from the repo root:
|
||||
|
||||
```powershell
|
||||
./deploy/up.ps1 # build + start (detached)
|
||||
./deploy/up.ps1 -Foreground # stream logs instead of detaching
|
||||
./deploy/up.ps1 -Proxy # also run the top-level nginx (everything on :80)
|
||||
./deploy/logs.ps1 api # tail a service's logs
|
||||
./deploy/down.ps1 # stop
|
||||
./deploy/down.ps1 -Volumes # stop and wipe the DB + key volumes
|
||||
```
|
||||
|
||||
Linux / Ubuntu production target:
|
||||
|
||||
```bash
|
||||
./deploy/up.sh # build + start (detached)
|
||||
./deploy/up.sh --foreground
|
||||
./deploy/up.sh --proxy
|
||||
```
|
||||
|
||||
Both scripts validate that `deploy/.env` exists and that the required keys are non-blank before invoking Docker, so a misconfigured env fails fast with a clear message instead of a half-started stack.
|
||||
|
||||
## What it runs
|
||||
|
||||
`docker compose --env-file deploy/.env up --build` — Postgres, the API (auto-applies EF migrations on boot), and the frontend. The `--env-file` flag feeds the `${...}` variables in `docker-compose.yml`.
|
||||
|
||||
After it's up:
|
||||
- Frontend — http://localhost:8081
|
||||
- API / Swagger — http://localhost:8080/swagger
|
||||
|
||||
Reminder: the Google OAuth redirect URI for this layout is `http://localhost:8081/signin-google` (see `../docs/GOOGLE_OAUTH_SETUP.md`).
|
||||
Reference in New Issue
Block a user