在Mac OS X上的boot2docker,docker,django

问题描述

每当我访问container-ip:8000或http:// localhost:8000时,它都不起作用

请参阅docker / issues / 4007:在OSX上使用boot2docker时,您需要使用端口转发。 这意味着VM boot2docker需要将端口8000转发到OSX实际主机。 我在这里提到过:

$ VBoxManage modifyvm "boot2docker-vm" --natpf1 "tcp-port8000,tcp,,8000,,8000";

如果虚拟机已经在运行,则应运行另一个命令:

$ VBoxManage controlvm "boot2docker-vm" natpf1 "tcp-port8000,tcp,,8000,,8000";

例如,该脚本可以提供帮助。

如“ OsX上的Boot2docker ”所示,localhost将无法工作:

它不起作用的原因是您的DOCKER_HOST地址不是localhost地址(0.0.0.0),而是boot2docker VM的地址。

获取boot2docker VM的地址。

$ boot2docker ip
192.168.59.103

在浏览器中输入http://192.168.59.103:8000地址。

解决方法

我想在Mac OS X上的docker中运行Django应用。我已使用该get-started教程安装了docker 。

我参考docker -library中的Django文档来构建映像https://github.com/docker-
library/docs/tree/master/django,我将Dockerfile添加到新的Django项目文件夹中

问题是我构建了映像并成功运行了容器,但是每当我访问container- ip:8000或时http://localhost:8000,它都不起作用。有人有解决方案吗?

这是图像和容器信息;docker_test是我的应用

REPOSITORY          TAG                 IMAGE ID            CREATED         VIRTUAL SIZE
docker_test         latest              fd6ceebc0c58        13 hours ago        761.5 MB
django              onbuild             9cbcfd71d759        30 hours ago        728.6 MB

CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                    NAMES
cbf98a73ea0a        docker_test         "python manage.py ru   26 minutes ago      Up 26 minutes       0.0.0.0:8000->8000/tcp   docker_app

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...