无法在docker上运行django
我正在docker上安装django服务器应用程序。docker可以很好地运行容器,但是docker没有使用运行django的命令 我已经浏览了一些youtube视频,但没有一个对我有用 Dockerfile无法在docker上运行django,django,docker,docker-compose,dockerfile,Django,Docker,Docker Compose,Dockerfile,我正在docker上安装django服务器应用程序。docker可以很好地运行容器,但是docker没有使用运行django的命令 我已经浏览了一些youtube视频,但没有一个对我有用 Dockerfile FROM python:3.6-stretch MAINTAINER *** ENV PYTHONBUFFERED 1 COPY ./requirements.txt /requirements.txt RUN pip install -r /requirements.txt R
FROM python:3.6-stretch
MAINTAINER ***
ENV PYTHONBUFFERED 1
COPY ./requirements.txt /requirements.txt
RUN pip install -r /requirements.txt
RUN mkdir /specfolder
WORKDIR /specfolder
COPY ./myfolder /specfolder
EXPOSE 8000
CMD ["python", "manage.py runserver"]
我已尝试将命令放置在docker-compose.yml文件下
commands: sh -c "python manager.py runserver"
但没有一个成功
docker-compose.yml文件
version: "3"
services:
myapp:
build:
context: .
ports:
- "8000:8000"
volumes:
- ./myfolder:/specfolder
requirements.txt
django==2.2.4
pandas
xlrd
xlsxwriter
现在在运动学下,我得到了python外壳
Type "help", "copyright", "credits" or "license" for more information.
>>> 2019-08-31T13:34:51.844192800Z Python 3.6.9 (default, Aug 14 2019,
13:02:21)
[GCC 6.3.0 20170516] on linux
无法在浏览器中访问127.0.0.1:8000/myapp/login。我发现您的实现中存在两个问题
Dockerfile
中,您有,CMD[“python”,“manage.py runserver”]
。它应该是CMD[“python”、“manage.py”、“runserver”]
中,commands:sh-c“pythonmanager.pyrunserver”
应该是commands:pythonmanager.pyrunserver
CMD
从Dockerfile
您需要在runserver命令中进行更改。 换成
python manage.py runserver 0.0.0.0:8000
您的Dockerfile将是这样的
# other command
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
如果您正在使用Dockerfile或docker compose,请相应地进行更改。您是如何知道它不起作用的?你看到任何错误消息了吗?仍然没有用,当我访问localhost:8000时,它会显示“无法访问此站点”页面现在我可以运行应用程序,但无法访问它浏览器通过StatReloader执行系统检查来监视文件更改。。。系统检查未发现任何问题(0静音)。您有17个未应用的迁移。您的项目可能无法正常工作,除非您为应用程序(admin、auth、contenttypes、sessions)应用迁移。运行“python manage.py migrate”以应用它们。2019年9月3日-09:02:55 Django版本2.2.4,使用设置“myproject.settings”在启动开发服务器时使用CONTROL-C退出服务器。我已被编写器文件更改为:`version:'3'服务:web:build:。卷:-.:/myproject端口:-“8000:8000”`