[Django]-Issue with Dockerising Django app using docker-compose

3๐Ÿ‘

โœ…

try to edit your Dockerfile like this:

FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY requirements.txt /code/
RUN pip install -r requirements.txt
COPY . /code/
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]

and remove command: python manage.py runserver 0.0.0.0:8000 from compose

I assumed that the manage.py is in /code/ folder, since you have WORKDIR /code in the dockerfile then the server will be created in the build stage and the files will be copied to it

๐Ÿ‘คLinPy

1๐Ÿ‘

as error states โ€“ manage.py is not in that directory.
And as far as I can see you are copying requirements.txt twice.

FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
# move following line above 'pip install' and make sure that `manage.py` exists on the same directory as `requirements.txt`
COPY . /code/
# remove following line
# COPY requirements.txt /code/
RUN pip install -r requirements.txt
# you can define CMD here, but for dev env it is much more convenient to define it on docker-compose.yml, so you do not need to rebuild the image in case of some changes of the COMMAND
๐Ÿ‘คThe Hog

Leave a comment