FROM python:3.11-slim # install system dependencies RUN apt-get update && apt-get install nginx netcat-openbsd curl vim jq rsync libpango-1.0-0 libpangocairo-1.0-0 libcairo2 -y # copy our nginx configuration to overwrite nginx defaults RUN rm /etc/nginx/sites-enabled/default RUN rm /etc/nginx/sites-available/default COPY ./nginx/default.conf /etc/nginx/conf.d/default.conf # link nginx logs to container stdout RUN ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log # copy the django code COPY ./src ./app # change our working directory to the django projcet roo WORKDIR /app # create virtual env (notice the location?) # update pip # install requirements RUN python -m venv /opt/venv && \ /opt/venv/bin/python -m pip install pip --upgrade && \ /opt/venv/bin/python -m pip install -r requirements.txt # AƱade path a .bashrc RUN echo "export PATH=/opt/venv/bin/:$PATH" >> /root/.bashrc # make our entrypoint.sh executable RUN chmod +x config/entrypoint.sh #EXPOSE 8080 # execute our entrypoint.sh file CMD ["./config/entrypoint.sh"]