From e0901a026c586fed366359b50d0b17ad5fcf8316 Mon Sep 17 00:00:00 2001 From: Giovani Rodriguez Date: Thu, 24 Jul 2025 17:29:48 +0000 Subject: [PATCH] fix: correct how Dockerfile copies dirs --- backend/Dockerfile | 11 ++++++++--- frontend/Dockerfile | 7 ++++++- generate_configs.py | 19 +++++++++---------- 3 files changed, 23 insertions(+), 14 deletions(-) diff --git a/backend/Dockerfile b/backend/Dockerfile index 628cc31..5c3b427 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -2,9 +2,14 @@ FROM python:3.11-slim WORKDIR /app -COPY requirements.txt . +COPY backend/requirements.txt . + RUN pip install --no-cache-dir -r requirements.txt -COPY . . +# ✅ Copy the entire backend directory as /app/backend +COPY backend/ ./backend -CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] +# ✅ Set PYTHONPATH to include /app +ENV PYTHONPATH=/app + +CMD ["uvicorn", "backend.main:app", "--host", "0.0.0.0", "--port", "8000"] diff --git a/frontend/Dockerfile b/frontend/Dockerfile index d54402b..aeba658 100644 --- a/frontend/Dockerfile +++ b/frontend/Dockerfile @@ -1,8 +1,13 @@ -FROM node:20-alpine AS builder +FROM node:22-alpine AS builder WORKDIR /app COPY . . + RUN npm install && npm run build FROM nginx:alpine + +# Optional: use custom nginx config for React Router support +# COPY nginx.conf /etc/nginx/conf.d/default.conf + COPY --from=builder /app/build /usr/share/nginx/html diff --git a/generate_configs.py b/generate_configs.py index d55f0fc..4ee2076 100644 --- a/generate_configs.py +++ b/generate_configs.py @@ -18,7 +18,7 @@ while True: db_user = "minxa" db_password = secrets.token_urlsafe(16) db_name = "minxadb" -db_host = "minxa-db" +db_host = "db" db_port = 5432 hashids_salt = secrets.token_urlsafe(32) @@ -53,10 +53,8 @@ frontend_env_path.write_text(frontend_env) print(f"✅ frontend/.env written") # === Generate docker-compose.generated.yml === # -compose_yml = f"""version: "3.9" - -services: - minxa-db: +compose_yml = f"""services: + db: image: postgres:16 environment: POSTGRES_USER: {db_user} @@ -72,26 +70,27 @@ services: networks: - appnet - minxa-backend: + backend: build: - context: ./backend + context: . + dockerfile: backend/Dockerfile env_file: - ./backend/.env depends_on: - minxa-db: + db: condition: service_healthy ports: - "8000:8000" networks: - appnet - minxa-frontend: + frontend: build: context: ./frontend env_file: - ./frontend/.env depends_on: - - minxa-backend + - backend ports: - "3000:80" networks: