Django显示“它工作”的页面,而不是我的项目,当我开始它的docker

我正在尝试使用我的应用程序创buildDocker容器,这在本地计算机和生产服务器上运行良好。 但是,当我创builddocker容器与我的项目,我只看到“它的工作”页面,而不是我的项目!

FROM python:2.7 MAINTAINER Name name <mail@gmail.com> ENV PYTHONUNBUFFERED 1 ENV DJANGO_SETTINGS_MODULE lms.settings RUN ls -la / RUN mkdir /lms/ WORKDIR /lms/ RUN pip install six Django==1.5.12 numpy python-dateutil Pillow django-colorful gunicorn south djangorestframework djangorestframework-jsonp simplejson psutil ADD . /lms/ RUN (cd /lms/ && python manage.py syncdb --noinput) RUN (cd /lms/ && python manage.py collectstatic --noinput) RUN ls -la /lms/ RUN cd /lms/ CMD gunicorn --env DJANGO_SETTINGS_MODULE=lms.settings lms.wsgi --pythonpath '/lms/' --bind 0.0.0.0:8000 

你应该像这样修改你的Dockerfile

 FROM python:2.7 MAINTAINER Name name <mail@gmail.com> ENV PYTHONUNBUFFERED 1 ENV DJANGO_SETTINGS_MODULE lms.settings RUN ls -la / RUN mkdir /lms WORKDIR /lms RUN pip install six Django==1.5.12 numpy python-dateutil Pillow django-colorful gunicorn south djangorestframework djangorestframework-jsonp simplejson psutil ADD . /lms RUN python manage.py syncdb --noinput RUN python manage.py collectstatic --noinput RUN ls -la CMD gunicorn --env DJANGO_SETTINGS_MODULE=lms.settings lms.wsgi --pythonpath '/lms/' --bind 0.0.0.0:8000` 

请参阅文档WORKDIR https://docs.docker.com/reference/builder/#workdir

而这个“最佳实践”

https://docs.docker.com/articles/dockerfile_best-practices/

当你RUN cd /lms它执行cd并退出,所以下一个命令不在/ lms中,而且当你指定WORKDIR时,不要在目录的末尾放一个/,因为你有两次WORDKIR,你的默认目录是/ lms / lms我猜