Fix some for docker
This commit is contained in:
+2
-1
@@ -3,7 +3,8 @@ POSTGRES_USER=postgres
|
|||||||
POSTGRES_PASSWORD=postgres
|
POSTGRES_PASSWORD=postgres
|
||||||
POSTGRES_DB=goldbank
|
POSTGRES_DB=goldbank
|
||||||
|
|
||||||
# Host port exposed for PostgreSQL (used by docker-compose db service)
|
# Host port for PostgreSQL. Each copy of this stack on the same machine
|
||||||
|
# must use a different port (the apps talk to hostname "db", not this port).
|
||||||
EXTERNAL_DB_PORT=5432
|
EXTERNAL_DB_PORT=5432
|
||||||
|
|
||||||
# Prisma connection string (inside Docker network use hostname "db")
|
# Prisma connection string (inside Docker network use hostname "db")
|
||||||
|
|||||||
@@ -33,6 +33,13 @@ DATABASE_URL=postgresql://goldbank:...@db:5432/goldbank?schema=public
|
|||||||
PORT=3000
|
PORT=3000
|
||||||
```
|
```
|
||||||
|
|
||||||
|
A second copy on the **same server** is a separate Dokploy application (its own
|
||||||
|
domains, passwords, and `JWT_SECRET`). Do not set `container_name` in this file:
|
||||||
|
those names are global in Docker, and a fixed `goldbank_db` collides with the
|
||||||
|
first copy. Give the second app its own `EXTERNAL_DB_PORT` (for example `5434`
|
||||||
|
if `5433` is already taken). Volumes stay separate because Dokploy uses a
|
||||||
|
different Compose project name for each application.
|
||||||
|
|
||||||
## Domains (container ports)
|
## Domains (container ports)
|
||||||
|
|
||||||
| Service | Domain | Port |
|
| Service | Domain | Port |
|
||||||
|
|||||||
+7
-5
@@ -3,11 +3,17 @@
|
|||||||
services:
|
services:
|
||||||
db:
|
db:
|
||||||
image: docker.arvancloud.ir/postgres:15-alpine
|
image: docker.arvancloud.ir/postgres:15-alpine
|
||||||
container_name: goldbank_db
|
# No container_name. Docker container names are global on the host, so a
|
||||||
|
# fixed name (goldbank_db) makes a second Dokploy app of this stack fail
|
||||||
|
# with "container name already in use". Compose names each container from
|
||||||
|
# the project name, which Dokploy sets uniquely per application.
|
||||||
environment:
|
environment:
|
||||||
POSTGRES_USER: ${POSTGRES_USER:-postgres}
|
POSTGRES_USER: ${POSTGRES_USER:-postgres}
|
||||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}
|
||||||
POSTGRES_DB: ${POSTGRES_DB:-goldbank}
|
POSTGRES_DB: ${POSTGRES_DB:-goldbank}
|
||||||
|
# Host port only. The apps use hostname "db" inside the compose network.
|
||||||
|
# Two copies on one machine must publish different host ports; set
|
||||||
|
# EXTERNAL_DB_PORT on the second Dokploy app (5432 stays the local default).
|
||||||
ports:
|
ports:
|
||||||
- "${EXTERNAL_DB_PORT:-5432}:5432"
|
- "${EXTERNAL_DB_PORT:-5432}:5432"
|
||||||
volumes:
|
volumes:
|
||||||
@@ -23,7 +29,6 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ./apps/api
|
context: ./apps/api
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
container_name: goldbank_api
|
|
||||||
# Prisma connects on module init, so a not-yet-ready DB crash-loops the API.
|
# Prisma connects on module init, so a not-yet-ready DB crash-loops the API.
|
||||||
depends_on:
|
depends_on:
|
||||||
db:
|
db:
|
||||||
@@ -110,7 +115,6 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ./apps/admin-panel
|
context: ./apps/admin-panel
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
container_name: goldbank_admin_panel
|
|
||||||
# No host ports — Dokploy/Traefik routes by domain to container port 80
|
# No host ports — Dokploy/Traefik routes by domain to container port 80
|
||||||
expose:
|
expose:
|
||||||
- "80"
|
- "80"
|
||||||
@@ -122,7 +126,6 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ./apps/user-app
|
context: ./apps/user-app
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
container_name: goldbank_user_app
|
|
||||||
# No host ports — Dokploy/Traefik routes by domain to container port 80
|
# No host ports — Dokploy/Traefik routes by domain to container port 80
|
||||||
expose:
|
expose:
|
||||||
- "80"
|
- "80"
|
||||||
@@ -135,7 +138,6 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ./apps/user-app-v2
|
context: ./apps/user-app-v2
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
container_name: goldbank_user_app_v2
|
|
||||||
expose:
|
expose:
|
||||||
- "80"
|
- "80"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|||||||
Reference in New Issue
Block a user