From 5f5a3de40a8d2fa9c6067c2b0fa567ff11419e80 Mon Sep 17 00:00:00 2001 From: Matthew Lemon Date: Thu, 23 May 2024 09:52:29 +0100 Subject: wip: moved config to base.py --- Dockerfile | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Dockerfile') diff --git a/Dockerfile b/Dockerfile index 16bb14c..bf9e33a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -10,6 +10,8 @@ USER 1001 WORKDIR /app +ENV DJANGO_SETTINGS_MODULE=conf.settings.base + # Install dependencies RUN pip install -U "pip>=24.0.0" && \ pip install -r requirements.txt && \ @@ -35,6 +37,8 @@ RUN chown 1001:0 /app && \ # Set user USER 1001 +ENV DJANGO_SETTINGS_MODULE=conf.settings.base + # Migrate database RUN python manage.py migrate -- cgit v1.2.3 From 84cdaedf5cbde6a60e2840ab35fcccf8106bd0f2 Mon Sep 17 00:00:00 2001 From: Matthew Lemon Date: Thu, 23 May 2024 14:01:57 +0100 Subject: Local Docker environment is now runnable with make --- Dockerfile | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) (limited to 'Dockerfile') diff --git a/Dockerfile b/Dockerfile index bf9e33a..bba15d4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # Builder stage -FROM registry.access.redhat.com/ubi9/python-311:1-52.1712567218 AS builder +FROM registry.access.redhat.com/ubi9/python-311:1-52.1712567218 AS builder # Add application sources USER 0 @@ -26,23 +26,13 @@ WORKDIR /app # Copy from builder COPY --from=builder /app /app +RUN apt update && apt install -y --no-install-recommends libpq-dev build-essential + # Install packages RUN pip install -r requirements.txt -# Copy across db file and set permissions -COPY db.sqlite3 /app/db.sqlite3 -RUN chown 1001:0 /app && \ - chmod 664 /app/db.sqlite3 - -# Set user -USER 1001 - -ENV DJANGO_SETTINGS_MODULE=conf.settings.base - -# Migrate database -RUN python manage.py migrate +ENV DJANGO_SETTINGS_MODULE=conf.settings.local -# Expose port EXPOSE 8000 # Start app -- cgit v1.2.3 From 5f9ca9b3e597a9dfda9ffb3af25a60b2c7309986 Mon Sep 17 00:00:00 2001 From: Matthew Lemon Date: Thu, 23 May 2024 15:05:49 +0100 Subject: Ditched the redhat builder stage - Run make to build and run - Does not use volumes do database data is not retained May have to revert if the CICD kicks this out for using a Dockerhub image. --- Dockerfile | 36 ++++++++++-------------------------- 1 file changed, 10 insertions(+), 26 deletions(-) (limited to 'Dockerfile') diff --git a/Dockerfile b/Dockerfile index bba15d4..dca00bd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,39 +1,23 @@ -# Builder stage -FROM registry.access.redhat.com/ubi9/python-311:1-52.1712567218 AS builder - -# Add application sources -USER 0 -COPY . /app -RUN mkdir -p /app/static/css /app/static/js /app/static/img -RUN chown -R 1001:0 /app -USER 1001 - -WORKDIR /app - -ENV DJANGO_SETTINGS_MODULE=conf.settings.base - -# Install dependencies -RUN pip install -U "pip>=24.0.0" && \ - pip install -r requirements.txt && \ - python manage.py collectstatic --noinput - -# Final stage FROM python:3.11-slim # Set working directory WORKDIR /app -# Copy from builder -COPY --from=builder /app /app +# Copy application code +COPY . /app -RUN apt update && apt install -y --no-install-recommends libpq-dev build-essential +# Install system dependencies +RUN apt-get update && apt-get install -y \ + libpq-dev \ + gcc \ + && rm -rf /var/lib/apt/lists/* -# Install packages -RUN pip install -r requirements.txt +# Install Python dependencies +RUN pip install --no-cache-dir -r requirements.txt ENV DJANGO_SETTINGS_MODULE=conf.settings.local EXPOSE 8000 -# Start app +# Start gunicorn CMD ["gunicorn", "ded.wsgi:application", "--bind", "0.0.0.0:8000"] -- cgit v1.2.3