Initial commits
This commit is contained in:
25
backend/Dockerfile
Normal file
25
backend/Dockerfile
Normal file
@@ -0,0 +1,25 @@
|
||||
# D:\GNPL-Private\TimeCraft\backend\Dockerfile
|
||||
|
||||
# Use a slim, official Python image to reduce overall image size
|
||||
FROM python:3.10-slim-buster
|
||||
|
||||
# Set the working directory inside the container
|
||||
WORKDIR /app
|
||||
|
||||
# Copy the requirements file into the container
|
||||
COPY requirements.txt .
|
||||
|
||||
# Install dependencies without caching to keep the image lightweight
|
||||
RUN pip install --no-cache-dir -r requirements.txt
|
||||
|
||||
# Copy the application source code into the container
|
||||
COPY ./app /app/app
|
||||
COPY main.py /app/main.py
|
||||
|
||||
# Expose the port Uvicorn will use to serve FastAPI
|
||||
EXPOSE 8000
|
||||
|
||||
# Define the container startup command to run the FastAPI app via Uvicorn
|
||||
# - main:app -> refers to 'app' inside main.py
|
||||
# - 0.0.0.0 -> binds to all interfaces so it's accessible outside container
|
||||
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
|
||||
Reference in New Issue
Block a user