fix: use unique ports 9100-9117 (avoids conflicts with BrowserOS on 9000/9103)
This commit is contained in:
parent
d151653ab1
commit
d46f455c03
18 changed files with 192 additions and 194 deletions
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8093".to_string())
|
||||
.unwrap_or_else(|_| "9115".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8081".to_string())
|
||||
.unwrap_or_else(|_| "9102".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8083".to_string())
|
||||
.unwrap_or_else(|_| "9105".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8088".to_string())
|
||||
.unwrap_or_else(|_| "9110".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -65,10 +65,10 @@ async fn main() {
|
|||
.route("/health", get(|| async { "Employees OK" }))
|
||||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("EMPLOYEES_PORT")
|
||||
.unwrap_or_else(|_| "8085".to_string())
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "9106".to_string())
|
||||
.parse()
|
||||
.expect("EMPLOYEES_PORT must be a valid u16");
|
||||
.expect("PORT must be a valid u16");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
||||
tracing::info!("Employees service listening on {}", addr);
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8092".to_string())
|
||||
.unwrap_or_else(|_| "9114".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -38,37 +38,37 @@ impl Services {
|
|||
fn from_env() -> Self {
|
||||
Self {
|
||||
users_url: std::env::var("USERS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8080".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9101".to_string()),
|
||||
companies_url: std::env::var("COMPANIES_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8081".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9102".to_string()),
|
||||
job_seekers_url: std::env::var("JOB_SEEKERS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8082".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9104".to_string()),
|
||||
customers_url: std::env::var("CUSTOMERS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8083".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9105".to_string()),
|
||||
photographers_url: std::env::var("PHOTOGRAPHERS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8085".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9107".to_string()),
|
||||
makeup_artists_url: std::env::var("MAKEUP_ARTISTS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8086".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9109".to_string()),
|
||||
tutors_url: std::env::var("TUTORS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8087".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9108".to_string()),
|
||||
developers_url: std::env::var("DEVELOPERS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8088".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9110".to_string()),
|
||||
video_editors_url: std::env::var("VIDEO_EDITORS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8089".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9111".to_string()),
|
||||
graphic_designers_url: std::env::var("GRAPHIC_DESIGNERS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8090".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9112".to_string()),
|
||||
social_media_managers_url: std::env::var("SOCIAL_MEDIA_MANAGERS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8091".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9113".to_string()),
|
||||
fitness_trainers_url: std::env::var("FITNESS_TRAINERS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8092".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9114".to_string()),
|
||||
catering_services_url: std::env::var("CATERING_SERVICES_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8093".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9115".to_string()),
|
||||
ugc_content_creators_url: std::env::var("UGC_CONTENT_CREATORS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8095".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9117".to_string()),
|
||||
payments_url: std::env::var("PAYMENTS_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8094".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9116".to_string()),
|
||||
employees_url: std::env::var("EMPLOYEES_SERVICE_URL")
|
||||
.unwrap_or_else(|_| "http://localhost:8096".to_string()),
|
||||
.unwrap_or_else(|_| "http://localhost:9106".to_string()),
|
||||
client: reqwest::Client::new(),
|
||||
}
|
||||
}
|
||||
|
|
@ -240,7 +240,7 @@ async fn main() {
|
|||
.with_state(services);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8000".to_string())
|
||||
.unwrap_or_else(|_| "9100".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a valid u16");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8090".to_string())
|
||||
.unwrap_or_else(|_| "9112".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8082".to_string())
|
||||
.unwrap_or_else(|_| "9104".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8087".to_string())
|
||||
.unwrap_or_else(|_| "9109".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -351,7 +351,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8094".to_string())
|
||||
.unwrap_or_else(|_| "9116".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a valid u16");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8085".to_string())
|
||||
.unwrap_or_else(|_| "9107".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8091".to_string())
|
||||
.unwrap_or_else(|_| "9113".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8086".to_string())
|
||||
.unwrap_or_else(|_| "9108".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8095".to_string())
|
||||
.unwrap_or_else(|_| "9117".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -107,7 +107,7 @@ async fn main() {
|
|||
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8080".to_string())
|
||||
.unwrap_or_else(|_| "9101".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a valid u16");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ async fn main() {
|
|||
.with_state(state);
|
||||
|
||||
let port: u16 = std::env::var("PORT")
|
||||
.unwrap_or_else(|_| "8089".to_string())
|
||||
.unwrap_or_else(|_| "9111".to_string())
|
||||
.parse()
|
||||
.expect("PORT must be a number");
|
||||
let addr = SocketAddr::from(([0, 0, 0, 0], port));
|
||||
|
|
|
|||
|
|
@ -1,20 +1,18 @@
|
|||
version: '3.9'
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:16-alpine
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
POSTGRES_USER: nxtgauge
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-nxtgauge_dev}
|
||||
POSTGRES_PASSWORD: nxtgauge_dev
|
||||
POSTGRES_DB: nxtgauge_db
|
||||
ports:
|
||||
- '5432:5432'
|
||||
- "5432:5432"
|
||||
volumes:
|
||||
- pgdata:/var/lib/postgresql/data
|
||||
- ./scripts/init-db.sql:/docker-entrypoint-initdb.d/init.sql
|
||||
- ./scripts/seed.sql:/docker-entrypoint-initdb.d/seed.sql
|
||||
healthcheck:
|
||||
test: ['CMD-SHELL', 'pg_isready -U nxtgauge -d nxtgauge_db']
|
||||
test: ["CMD-SHELL", "pg_isready -U nxtgauge -d nxtgauge_db"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
|
|
@ -23,63 +21,93 @@ services:
|
|||
image: redis:7-alpine
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- '6379:6379'
|
||||
- "6379:6379"
|
||||
volumes:
|
||||
- redisdata:/data
|
||||
command: redis-server --appendonly yes
|
||||
healthcheck:
|
||||
test: ['CMD', 'redis-cli', 'ping']
|
||||
test: ["CMD", "redis-cli", "ping"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
|
||||
# ── Core Services ────────────────────────────────────────────────────────
|
||||
# ── Gateway ───────────────────────────────────────────────────────────────
|
||||
|
||||
gateway:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/gateway/Dockerfile
|
||||
environment:
|
||||
PORT: 8000
|
||||
USERS_SERVICE_URL: http://users:8080
|
||||
COMPANIES_SERVICE_URL: http://companies:8081
|
||||
JOB_SEEKERS_SERVICE_URL: http://job_seekers:8082
|
||||
CUSTOMERS_SERVICE_URL: http://customers:8083
|
||||
PHOTOGRAPHERS_SERVICE_URL: http://photographers:8085
|
||||
MAKEUP_ARTISTS_SERVICE_URL: http://makeup_artists:8086
|
||||
TUTORS_SERVICE_URL: http://tutors:8087
|
||||
DEVELOPERS_SERVICE_URL: http://developers:8088
|
||||
VIDEO_EDITORS_SERVICE_URL: http://video_editors:8089
|
||||
GRAPHIC_DESIGNERS_SERVICE_URL: http://graphic_designers:8090
|
||||
SOCIAL_MEDIA_MANAGERS_SERVICE_URL: http://social_media_managers:8091
|
||||
FITNESS_TRAINERS_SERVICE_URL: http://fitness_trainers:8092
|
||||
CATERING_SERVICES_SERVICE_URL: http://catering_services:8093
|
||||
PAYMENTS_SERVICE_URL: http://payments:8094
|
||||
REDIS_URL: redis://redis:6379
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-gateway:high-performance-latest
|
||||
ports:
|
||||
- '8000:8000'
|
||||
- "9100:9100"
|
||||
environment:
|
||||
PORT: "9100"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
RUST_LOG: info
|
||||
FRONTEND_URL: http://localhost:3000
|
||||
ADMIN_URL: http://localhost:4000
|
||||
USERS_SERVICE_URL: http://users:9101
|
||||
COMPANIES_SERVICE_URL: http://companies:9102
|
||||
JOB_SEEKERS_SERVICE_URL: http://job-seekers:9104
|
||||
CUSTOMERS_SERVICE_URL: http://customers:9105
|
||||
EMPLOYEES_SERVICE_URL: http://employees:9106
|
||||
PHOTOGRAPHERS_SERVICE_URL: http://photographers:9107
|
||||
TUTORS_SERVICE_URL: http://tutors:9108
|
||||
MAKEUP_ARTISTS_SERVICE_URL: http://makeup-artists:9109
|
||||
DEVELOPERS_SERVICE_URL: http://developers:9110
|
||||
VIDEO_EDITORS_SERVICE_URL: http://video-editors:9111
|
||||
GRAPHIC_DESIGNERS_SERVICE_URL: http://graphic-designers:9112
|
||||
SOCIAL_MEDIA_MANAGERS_SERVICE_URL: http://social-media-managers:9113
|
||||
FITNESS_TRAINERS_SERVICE_URL: http://fitness-trainers:9114
|
||||
CATERING_SERVICES_SERVICE_URL: http://catering-services:9115
|
||||
PAYMENTS_SERVICE_URL: http://payments:9116
|
||||
UGC_CONTENT_CREATORS_SERVICE_URL: http://ugc-content-creators:9117
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
users:
|
||||
condition: service_started
|
||||
companies:
|
||||
condition: service_started
|
||||
job-seekers:
|
||||
condition: service_started
|
||||
customers:
|
||||
condition: service_started
|
||||
employees:
|
||||
condition: service_started
|
||||
photographers:
|
||||
condition: service_started
|
||||
tutors:
|
||||
condition: service_started
|
||||
makeup-artists:
|
||||
condition: service_started
|
||||
developers:
|
||||
condition: service_started
|
||||
video-editors:
|
||||
condition: service_started
|
||||
graphic-designers:
|
||||
condition: service_started
|
||||
social-media-managers:
|
||||
condition: service_started
|
||||
fitness-trainers:
|
||||
condition: service_started
|
||||
catering-services:
|
||||
condition: service_started
|
||||
payments:
|
||||
condition: service_started
|
||||
ugc-content-creators:
|
||||
condition: service_started
|
||||
|
||||
# ── Core Services ─────────────────────────────────────────────────────────
|
||||
|
||||
users:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/users/Dockerfile
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-users:high-performance-latest
|
||||
environment:
|
||||
PORT: 8080
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9101"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_EXPIRY_MINUTES: 15
|
||||
REFRESH_TOKEN_EXPIRY_DAYS: 30
|
||||
FRONTEND_URL: ${FRONTEND_URL:-http://localhost:3000}
|
||||
SMTP_HOST: ${SMTP_HOST:-}
|
||||
SMTP_PORT: ${SMTP_PORT:-587}
|
||||
SMTP_USER: ${SMTP_USER:-}
|
||||
SMTP_PASS: ${SMTP_PASS:-}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
|
|
@ -87,29 +115,25 @@ services:
|
|||
condition: service_healthy
|
||||
|
||||
companies:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/companies/Dockerfile
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-companies:high-performance-latest
|
||||
environment:
|
||||
PORT: 8081
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9102"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
job_seekers:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/job_seekers/Dockerfile
|
||||
job-seekers:
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-job-seekers:high-performance-latest
|
||||
environment:
|
||||
PORT: 8082
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9104"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
|
|
@ -117,14 +141,25 @@ services:
|
|||
condition: service_healthy
|
||||
|
||||
customers:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/customers/Dockerfile
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-customers:high-performance-latest
|
||||
environment:
|
||||
PORT: 8083
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9105"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
employees:
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-employees:high-performance-latest
|
||||
environment:
|
||||
PORT: "9106"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
|
|
@ -134,29 +169,12 @@ services:
|
|||
# ── 9 Profession Services ─────────────────────────────────────────────────
|
||||
|
||||
photographers:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/photographers/Dockerfile
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-photographers:high-performance-latest
|
||||
environment:
|
||||
PORT: 8085
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9107"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
makeup_artists:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/makeup_artists/Dockerfile
|
||||
environment:
|
||||
PORT: 8086
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
|
|
@ -164,14 +182,25 @@ services:
|
|||
condition: service_healthy
|
||||
|
||||
tutors:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/tutors/Dockerfile
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-tutors:high-performance-latest
|
||||
environment:
|
||||
PORT: 8087
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9108"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
makeup-artists:
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-makeup-artists:high-performance-latest
|
||||
environment:
|
||||
PORT: "9109"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
|
|
@ -179,89 +208,77 @@ services:
|
|||
condition: service_healthy
|
||||
|
||||
developers:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/developers/Dockerfile
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-developers:high-performance-latest
|
||||
environment:
|
||||
PORT: 8088
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9110"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
video_editors:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/video_editors/Dockerfile
|
||||
video-editors:
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-video-editors:high-performance-latest
|
||||
environment:
|
||||
PORT: 8089
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9111"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
graphic_designers:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/graphic_designers/Dockerfile
|
||||
graphic-designers:
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-graphic-designers:high-performance-latest
|
||||
environment:
|
||||
PORT: 8090
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9112"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
social_media_managers:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/social_media_managers/Dockerfile
|
||||
social-media-managers:
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-social-media-managers:high-performance-latest
|
||||
environment:
|
||||
PORT: 8091
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9113"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
fitness_trainers:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/fitness_trainers/Dockerfile
|
||||
fitness-trainers:
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-fitness-trainers:high-performance-latest
|
||||
environment:
|
||||
PORT: 8092
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9114"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
catering_services:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/catering_services/Dockerfile
|
||||
catering-services:
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-catering-services:high-performance-latest
|
||||
environment:
|
||||
PORT: 8093
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9115"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
|
|
@ -271,46 +288,27 @@ services:
|
|||
# ── Payments ──────────────────────────────────────────────────────────────
|
||||
|
||||
payments:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/payments/Dockerfile
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-payments:high-performance-latest
|
||||
environment:
|
||||
PORT: 8094
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9116"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
RAZORPAY_KEY_ID: ${RAZORPAY_KEY_ID:-}
|
||||
RAZORPAY_KEY_SECRET: ${RAZORPAY_KEY_SECRET:-}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
employees:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/employees/Dockerfile
|
||||
environment:
|
||||
PORT: 8095
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
# ── UGC ───────────────────────────────────────────────────────────────────
|
||||
|
||||
ugc_content_creators:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: apps/ugc_content_creators/Dockerfile
|
||||
ugc-content-creators:
|
||||
image: ghcr.io/traceworks2023/nxtgauge-rust-ugc-content-creators:high-performance-latest
|
||||
environment:
|
||||
PORT: 8096
|
||||
DATABASE_URL: postgresql://nxtgauge:${POSTGRES_PASSWORD:-nxtgauge_dev}@postgres:5432/nxtgauge_db
|
||||
PORT: "9117"
|
||||
DATABASE_URL: postgresql://nxtgauge:nxtgauge_dev@postgres:5432/nxtgauge_db
|
||||
REDIS_URL: redis://redis:6379
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
JWT_SECRET: local_dev_jwt_secret
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue