diff --git a/Dockerfile b/Dockerfile index 088b7f3..ff13f2b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,46 +1,46 @@ -# Use the official Python 3.11 image -FROM --platform=arm64 python:3.11.7-bullseye -# ARG BUILDPLATFORM -# FROM python:3.11.7-bullseye - -ENV PYTHONBUFFERED 1 - -RUN apt-get update -# Install necessary dependencies, including cmake -RUN apt-get install -y \ - wget \ - tar \ - cmake \ - proj-bin \ - libgeos-c1v5 \ - libproj-dev \ - libfreexl1 \ - libminizip-dev \ - libspatialite-dev \ - gdal-bin \ - libsqlite3-mod-spatialite \ - vim - -# Create directory -RUN mkdir /code - -# Set the working directory to /code -WORKDIR /code - -# Mirror the current directory to the working directory for hotreloading -ADD . /code/ - -# Install pipenv -RUN pip install --no-cache-dir -r linux-requirements.txt - -# Make migrations -RUN python stude/manage.py makemigrations - -# Run custom migrate -RUN python stude/manage.py custom_migrate - -# Generate DRF Spectacular Documentation -RUN python stude/manage.py spectacular --color --file stude/schema.yml - -# Expose port 8000 for the web server -EXPOSE 8000 +# Use the official Python 3.11 image +FROM --platform=arm64 python:3.11.9-bookworm +# ARG BUILDPLATFORM +# FROM python:3.11.7-bullseye + +ENV PYTHONBUFFERED 1 + +RUN apt-get update +# Install necessary dependencies, including cmake +RUN apt-get install -y \ + wget \ + tar \ + cmake \ + proj-bin \ + libgeos-c1v5 \ + libproj-dev \ + libfreexl1 \ + libminizip-dev \ + libspatialite-dev \ + gdal-bin \ + libsqlite3-mod-spatialite \ + vim + +# Create directory +RUN mkdir /code + +# Set the working directory to /code +WORKDIR /code + +# Mirror the current directory to the working directory for hotreloading +ADD . /code/ + +# Install pipenv +RUN pip install --no-cache-dir -r linux-requirements.txt + +# Make migrations +RUN python stude/manage.py makemigrations + +# Run custom migrate +RUN python stude/manage.py custom_migrate + +# Generate DRF Spectacular Documentation +RUN python stude/manage.py spectacular --color --file stude/schema.yml + +# Expose port 8000 for the web server +EXPOSE 8000