chore: wire Carplace into dev and production stacks
Build & Deploy / Build & Push Docker Image (push) Successful in 2m55s
Test / Type Check (all packages) (push) Successful in 54s
Build & Deploy / Deploy to VPS (push) Successful in 4s
Test / API Unit Tests (push) Failing after 48s
Test / Homepage Unit Tests (push) Successful in 43s
Test / Storefront Unit Tests (push) Failing after 40s
Test / Admin Unit Tests (push) Successful in 40s
Test / Dashboard Unit Tests (push) Failing after 42s
Test / API Integration Tests (push) Successful in 1m0s
Build & Deploy / Build & Push Docker Image (push) Successful in 2m55s
Test / Type Check (all packages) (push) Successful in 54s
Build & Deploy / Deploy to VPS (push) Successful in 4s
Test / API Unit Tests (push) Failing after 48s
Test / Homepage Unit Tests (push) Successful in 43s
Test / Storefront Unit Tests (push) Failing after 40s
Test / Admin Unit Tests (push) Successful in 40s
Test / Dashboard Unit Tests (push) Failing after 42s
Test / API Integration Tests (push) Successful in 1m0s
This commit is contained in:
+8
-8
@@ -20,7 +20,7 @@ docker compose -f docker-compose.dev.yml --profile full up --build
|
||||
|
||||
Services:
|
||||
|
||||
- storefront: `http://localhost:3000`
|
||||
- carplace: `http://localhost:3000`
|
||||
- dashboard: `http://localhost:3000/dashboard`
|
||||
- admin: `http://localhost:3000/admin`
|
||||
- public-site: `http://localhost:3003`
|
||||
@@ -31,12 +31,12 @@ Each dev app now runs in its own container and can be started independently with
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.dev.yml --profile api up --build
|
||||
docker compose -f docker-compose.dev.yml --profile storefront up --build
|
||||
docker compose -f docker-compose.dev.yml --profile carplace up --build
|
||||
docker compose -f docker-compose.dev.yml --profile dashboard up --build
|
||||
docker compose -f docker-compose.dev.yml --profile admin up --build
|
||||
docker compose -f docker-compose.dev.yml --profile public-site up --build
|
||||
docker compose -f docker-compose.dev.yml --profile tools up --build
|
||||
docker compose -f docker-compose.dev.yml --profile api --profile storefront --profile dashboard --profile admin up --build
|
||||
docker compose -f docker-compose.dev.yml --profile api --profile carplace --profile dashboard --profile admin up --build
|
||||
```
|
||||
|
||||
Notes:
|
||||
@@ -121,7 +121,7 @@ Add an A record for every subdomain to your server's public IP before deploying
|
||||
|
||||
| Subdomain | Service |
|
||||
|---|---|
|
||||
| `rentaldrivego.ma` | storefront and public site |
|
||||
| `rentaldrivego.ma` | carplace and public site |
|
||||
| `api.rentaldrivego.ma` | API |
|
||||
| `pgmanage.rentaldrivego.ma` | pgManage (DB admin) |
|
||||
| `portainer.rentaldrivego.ma` | Portainer |
|
||||
@@ -163,7 +163,7 @@ Open `.env.docker.production` and fill in every value. The minimum required secr
|
||||
|
||||
Production now derives `DATABASE_URL` inside the app container from `POSTGRES_HOST`, `POSTGRES_PORT`, `POSTGRES_DB`, `POSTGRES_USER`, and `POSTGRES_PASSWORD` when `DATABASE_URL_FROM_POSTGRES=true`. That avoids Prisma auth failures when the database password contains reserved URL characters such as `@`, `:`, or `/`.
|
||||
|
||||
The example file uses `rentaldrivego.ma` for the storefront and public site. The dashboard and admin panel are routed under that same host at `/dashboard` and `/admin`.
|
||||
The example file uses `rentaldrivego.ma` for the carplace and public site. The dashboard and admin panel are routed under that same host at `/dashboard` and `/admin`.
|
||||
Set `PORTAINER_DOMAIN=portainer.rentaldrivego.ma` in `.env.docker.production` to expose Portainer through Traefik.
|
||||
Set `PGMANAGE_DOMAIN=pgmanage.rentaldrivego.ma` to expose pgManage through Traefik, and set `PGMANAGE_LICENSE_KEY` if you are running the enterprise image.
|
||||
Set `REGISTRY_DOMAIN=registry.rentaldrivego.ma` to expose the Docker registry through Traefik.
|
||||
@@ -196,7 +196,7 @@ For production image builds, also define these GitLab CI/CD variables with their
|
||||
```text
|
||||
NEXT_PUBLIC_API_URL=https://api.rentaldrivego.ma/api/v1
|
||||
NEXT_PUBLIC_MARKETPLACE_URL=https://rentaldrivego.ma
|
||||
NEXT_PUBLIC_STOREFRONT_URL=https://rentaldrivego.ma
|
||||
NEXT_PUBLIC_CARPLACE_URL=https://rentaldrivego.ma
|
||||
NEXT_PUBLIC_DASHBOARD_URL=https://rentaldrivego.ma/dashboard
|
||||
NEXT_PUBLIC_ADMIN_URL=https://rentaldrivego.ma/admin
|
||||
```
|
||||
@@ -256,7 +256,7 @@ npm run docker:prod:start:traefik
|
||||
npm run docker:prod:start:postgres
|
||||
npm run docker:prod:start:redis
|
||||
npm run docker:prod:start:api
|
||||
npm run docker:prod:start:storefront
|
||||
npm run docker:prod:start:carplace
|
||||
npm run docker:prod:start:dashboard
|
||||
npm run docker:prod:start:admin
|
||||
npm run docker:prod:start:frontends
|
||||
@@ -269,7 +269,7 @@ npm run docker:prod:start:api && npm run docker:prod:start:frontends
|
||||
|
||||
Docker will:
|
||||
1. Build the monorepo image on the server
|
||||
2. Start all app services (`api`, `storefront`, `dashboard`, `admin`, `pgmanage`)
|
||||
2. Start all app services (`api`, `carplace`, `dashboard`, `admin`, `pgmanage`)
|
||||
|
||||
Traefik automatically picks up the containers and provisions TLS certificates. Services are live at their `https://` URLs within ~30 seconds.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user