Removed Django
This commit is contained in:
parent
340253cb83
commit
d8b43cc9c7
13
cmc-django/.gitignore
vendored
13
cmc-django/.gitignore
vendored
|
|
@ -1,13 +0,0 @@
|
|||
# Python-generated files
|
||||
__pycache__/
|
||||
*.py[oc]
|
||||
build/
|
||||
dist/
|
||||
wheels/
|
||||
*.egg-info
|
||||
|
||||
lib/
|
||||
bin/
|
||||
|
||||
# Virtual environments
|
||||
.venv
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
# Python-generated files
|
||||
__pycache__/
|
||||
*.py[oc]
|
||||
build/
|
||||
dist/
|
||||
wheels/
|
||||
*.egg-info
|
||||
|
||||
lib/
|
||||
|
||||
# Virtual environments
|
||||
.venv
|
||||
|
|
@ -1 +0,0 @@
|
|||
3.9
|
||||
|
|
@ -1,78 +0,0 @@
|
|||
# Stage 1: Base Image and System Dependencies
|
||||
# ------------------------------------------
|
||||
# Use an official Python slim image. These are multi-arch and will pull the arm64 variant on Apple Silicon.
|
||||
# Choose the Python version matching your project requirement (e.g., 3.11, 3.12).
|
||||
FROM python:3.11-slim AS base
|
||||
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
|
||||
|
||||
# Set environment variables to prevent interactive prompts during package installations
|
||||
ENV PYTHONDONTWRITEBYTECODE 1
|
||||
ENV PYTHONUNBUFFERED 1
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Install essential system dependencies
|
||||
# - build-essential: Required for compiling some Python packages with C extensions.
|
||||
# - pkg-config: Helper tool for finding library compilation flags.
|
||||
# - default-libmysqlclient-dev: Required for mysqlclient (MySQL/MariaDB adapter).
|
||||
# (Replaced libpq-dev from previous version).
|
||||
# - curl: Needed to download the uv installer script.
|
||||
# Clean up apt cache afterwards to keep the image size down.
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
build-essential \
|
||||
pkg-config \
|
||||
default-libmysqlclient-dev \
|
||||
curl \
|
||||
clang \
|
||||
&& apt-get clean \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Stage 2: Install uv
|
||||
# -------------------
|
||||
# Install uv using the recommended script.
|
||||
# RUN curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
# Add uv to the PATH
|
||||
# ENV PATH="/root/.cargo/bin:$PATH"
|
||||
|
||||
# Stage 3: Application Setup
|
||||
# --------------------------
|
||||
# Set the working directory inside the container
|
||||
WORKDIR /app
|
||||
|
||||
# Copy dependency file(s)
|
||||
# Ensure requirements.txt includes Django and all other necessary packages.
|
||||
# COPY requirements.txt requirements.txt
|
||||
# If you use pyproject.toml for dependencies primarily, copy it instead or as well:
|
||||
COPY pyproject.toml pyproject.toml
|
||||
|
||||
# Install Python dependencies using uv from requirements.txt
|
||||
# --system: Install packages into the system Python environment within the container (common for Docker)
|
||||
# --no-cache: Avoid caching downloads/builds within this layer to keep it smaller
|
||||
# RUN uv pip install --system --no-cache-dir -r requirements.txt
|
||||
|
||||
# NOTE: Removed the 'uv pip install .' command below as it caused the
|
||||
# "Multiple top-level packages discovered" error. We typically only need
|
||||
# to install dependencies from requirements.txt for running a Django app in Docker.
|
||||
# Ensure your requirements.txt is complete.
|
||||
# -----------------------------------------------------------------------------
|
||||
# Or if using pyproject.toml (ensure it defines dependencies correctly):
|
||||
|
||||
ENV UV_LINK_MODE=copy
|
||||
RUN uv pip install --system --no-cache-dir .
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
|
||||
# Copy the rest of the application code into the container
|
||||
COPY . .
|
||||
|
||||
# Collect static files
|
||||
RUN uv run python cmcsales/manage.py collectstatic --noinput
|
||||
|
||||
# Expose the port the Django app runs on (adjust if you use a different port)
|
||||
EXPOSE 8000
|
||||
|
||||
|
||||
# Default command to run the application
|
||||
# This is often overridden by docker-com
|
||||
Loading…
Reference in a new issue