feat: add production landing page service and remove Caddy in favor of external reverse proxy configuration

This commit is contained in:
2026-04-03 19:54:32 +02:00
parent c13eb331be
commit 0eca9a101f
6 changed files with 35 additions and 50 deletions

View File

@@ -39,7 +39,7 @@ Optional integrations:
For backend-only local infrastructure use [docker-compose.yml](/abs/path/C:/Users/a931627/Documents/apps/GreenLns/docker-compose.yml).
For the production-style self-hosted stack with landing page, Caddy, API, PostgreSQL, and MinIO use [greenlns-landing/docker-compose.yml](/abs/path/C:/Users/a931627/Documents/apps/GreenLns/greenlns-landing/docker-compose.yml).
For the production-style self-hosted stack with landing page, API, PostgreSQL, and MinIO behind an external reverse proxy use [greenlns-landing/docker-compose.yml](/abs/path/C:/Users/a931627/Documents/apps/GreenLns/greenlns-landing/docker-compose.yml).
## Server deployment
@@ -87,18 +87,23 @@ What is not built locally, but pulled as ready-made images:
- `postgres` uses `postgres:16-alpine`
- `minio` uses `minio/minio:latest`
- `caddy` uses `caddy:2.8-alpine`
So yes: `docker compose up --build -d` builds the landing page container and the API container, and it starts PostgreSQL as a container. PostgreSQL is not "built" from your code, it is started from the official Postgres image.
This starts:
- `caddy`
- `landing`
- `api`
- `postgres`
- `minio`
Host ports for an external reverse proxy:
- `3000` -> `landing`
- `3001` -> `api`
- `9000` -> `minio` S3 API
- `9001` -> `minio` console
### 3. Useful server commands
Check running containers:
@@ -173,7 +178,7 @@ There, too:
- `landing` is built from `greenlns-landing/Dockerfile`
- `api` is built from `../server/Dockerfile`
- `postgres`, `minio`, and `caddy` are started from official images
- `postgres` and `minio` are started from official images
## iOS TestFlight