ishaq101 commited on
Commit
3463644
·
1 Parent(s): 0e3abf0

fix dockerfile

Browse files
Files changed (2) hide show
  1. Dockerfile +3 -16
  2. app.py +4 -0
Dockerfile CHANGED
@@ -1,38 +1,25 @@
1
  FROM python:3.13-slim-bookworm
2
 
3
- # Install uv
4
  COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
5
 
6
  WORKDIR /app
7
 
8
- # -------------------------
9
- # Environment
10
- # -------------------------
11
  ENV PYTHONUNBUFFERED=1 \
12
  UV_COMPILE_BYTECODE=1 \
13
- UV_SYSTEM_PYTHON=1 \
14
- HOME=/home/app \
15
- XDG_CACHE_HOME=/home/app/.cache \
16
- UV_CACHE_DIR=/home/app/.cache/uv
17
 
18
- # System deps
19
  RUN apt-get update && apt-get install -y --no-install-recommends \
20
  build-essential \
21
  libpq-dev \
22
  gcc \
23
  && rm -rf /var/lib/apt/lists/*
24
 
25
- # Create non-root user WITH home directory
26
  RUN addgroup --system app && \
27
- adduser --system --group --home /home/app app && \
28
- mkdir -p /home/app/.cache/uv && \
29
- chown -R app:app /home/app
30
 
31
- # Dependency layer
32
  COPY pyproject.toml uv.lock ./
33
  RUN uv sync --frozen
34
 
35
- # App code
36
  COPY . .
37
 
38
  RUN chown -R app:app /app
@@ -41,4 +28,4 @@ USER app
41
 
42
  EXPOSE 7860
43
 
44
- CMD ["uv", "run", "uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
 
1
  FROM python:3.13-slim-bookworm
2
 
 
3
  COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
4
 
5
  WORKDIR /app
6
 
 
 
 
7
  ENV PYTHONUNBUFFERED=1 \
8
  UV_COMPILE_BYTECODE=1 \
9
+ UV_SYSTEM_PYTHON=1
 
 
 
10
 
 
11
  RUN apt-get update && apt-get install -y --no-install-recommends \
12
  build-essential \
13
  libpq-dev \
14
  gcc \
15
  && rm -rf /var/lib/apt/lists/*
16
 
 
17
  RUN addgroup --system app && \
18
+ adduser --system --group --home /home/app app
 
 
19
 
 
20
  COPY pyproject.toml uv.lock ./
21
  RUN uv sync --frozen
22
 
 
23
  COPY . .
24
 
25
  RUN chown -R app:app /app
 
28
 
29
  EXPOSE 7860
30
 
31
+ CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
app.py CHANGED
@@ -26,6 +26,10 @@ app.include_router(router_agentic)
26
 
27
 
28
  # ====================== HEALTHCHECK & INFO ======================
 
 
 
 
29
  @app.get("/health/ready")
30
  def health_ready():
31
  return JSONResponse(content="Ready", status_code=200)
 
26
 
27
 
28
  # ====================== HEALTHCHECK & INFO ======================
29
+ @app.get("/")
30
+ def health_ready():
31
+ return JSONResponse(content="Hi, welcome to candidate explorer AI", status_code=200)
32
+
33
  @app.get("/health/ready")
34
  def health_ready():
35
  return JSONResponse(content="Ready", status_code=200)