Wie installiere ich Django am besten mit Hilfe von Docker?
Hallo! Mein Software 365Layouts
ist auch mit Docker und Python/Django gebaut. Mein Dockerfile sieht ungefähr so aus:
FROM python:3
RUN mkdir /code/
WORKDIR /code
#install packages
RUN apt-get update && apt-get install -y \
gettext
# Copy the rest of the applicaion's code
ADD . /code/
# Install dependencies
RUN pip install -r requirements.txt
#rights and user
RUN chown -R www-data:www-data * #nutzer der app
USER www-data
EXPOSE 8000
# Run the app
CMD ["python", "http://manage.py
", "runserver", "0.0.0.0:8000"]
Hier kannst Du auch "CMD ["./docker-entrypoint.sh"] mit RUN chmod 755 docker-entrypoint.sh
" verwenden, wenn du "migrate" oder "compilemessages" verwenden willst. Ich persönlich mache das und meine "docker-entrypoint.sh" sieht ungefähr so aus:
#!/bin/bash
.....
#start app
python manage.py migrate && \
python manage.py compilemessages && \
python manage.py runserver 0.0.0.0:8000
Und dann brauchst du noch die requirements. Ich führe oben im Dockerfile folgens aus "RUN pip install -r requirements.txt". Meine requirements.txt siehst ungefähr so aus:
Django==2.2.1
python-memcached==1.59
mysqlclient==1.4.2
simplejson==3.16.0
…
Ich baue das Image normal über "docker build -t newimage:latest . " . Ich nutze die Gitlabpipeline und Docker-Compose. Bei mir funktionier alles super, siehe 365Layouts
. Bei Fragen oder Problemen helfen wir dir gerne weiter.