Docker启动我的django服务器,并在0.0.0.0:8000处显示,但我无法在浏览器中访问它,0.0.0.0:8000和127.0.0.1:8000都无法正常工作
web_1 | You have unapplied migrations; your app may not work properly until
they are applied.
web_1 | Run 'python manage.py migrate' to apply them.
web_1 | April 30, 2017 - 03:36:35
web_1 | Django version 1.8.5, using settings 'my_project.settings'
web_1 | Starting development server at http://0.0.0.0:8000/
web_1 | Quit the server with CONTROL-C.
Dockerfile
version: '2'
services:
db:
image: postgres
web:
build: .
command: python3 manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- db
答案 0 :(得分:1)
您是否将主机上的端口映射到容器上的端口8000?例如,您可以在--publish 1234:8000
命令中指定docker run
,将主机端口1234映射到容器端口8000,然后在http://localhost:1234/
到达它。
答案 1 :(得分:0)
如果您使用的是旧版Docker Toolbox,则在这种情况下,您需要找到运行Docker引擎的VM的IP。如果运行 docker-machine ls ,它将显示您活动引擎的IP。然后,转到该容器的端口8000。 例如http://192.168.99.100:8000/ 在这里,192.168.99.100是运行我的Docker引擎的VM的IP地址。
此外,您还必须在setting.py文件的ALLOWED_HOST中添加虚拟机的IP