Files
project-managment/Dockerfile
T
sankalp 829dc626c2 chore(root): remove docker-compose.yml
Docker Compose moved to Dockerfile and entrypoint for streamlined deployment.
2026-06-28 15:07:59 +05:45

44 lines
1.1 KiB
Docker

FROM python:3.13-slim
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1 \
PIP_NO_CACHE_DIR=1 \
PIP_DISABLE_PIP_VERSION_CHECK=1 \
NODE_VERSION=20
WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends \
default-libmysqlclient-dev \
build-essential \
curl \
&& curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash - \
&& apt-get install -y nodejs \
&& rm -rf /var/lib/apt/lists/*
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
ARG DJANGO_SETTINGS_MODULE=config.settings.production
ENV DJANGO_SETTINGS_MODULE=${DJANGO_SETTINGS_MODULE}
ARG SECRET_KEY
ENV SECRET_KEY=${SECRET_KEY}
RUN python manage.py tailwind install && python manage.py collectstatic --noinput
RUN addgroup --system --gid 1001 app && \
adduser --system --uid 1001 --gid 1001 app && \
chown -R app:app /app
EXPOSE 8000
COPY --chown=app:app docker-entrypoint.sh /docker-entrypoint.sh
RUN chmod +x /docker-entrypoint.sh
USER app
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["gunicorn", "config.wsgi:application", "--bind", "0.0.0.0:8000"]