我想在一个简单的Docker容器中运行Django。
首先,我使用Docker-file构建了我的容器。没有什么特别的(只有FROM,RUN和COPY命令)
然后我用命令运行容器
docker run -tid -p 8000:8000 --name <container_name> <image>
输入我的容器:
docker exec -it <container_name> bash
运行Django服务器:
python manage.py runserver
得到了:
Starting development server at http://127.0.0.1:8000/
但是当我转到127.0.0.1:8000时,我什么也看不到:
The 127.0.0.1 page isn’t working
没有Nginx或其他工作服务器。
我究竟做错了什么?
更新1(Dockerfile)
FROM ubuntu:16.04
MAINTAINER Max Malyshev <user>
COPY . /root
WORKDIR /root
RUN apt-get update
RUN apt-get install python-pip -y
RUN apt-get install postgresql -y
RUN apt-get install rabbitmq-server -y
RUN apt-get install libpq-dev python-dev -y
RUN apt-get install npm -y
RUN apt-get install mongodb -y
RUN pip install -r requirements.txt
问题是您将开发服务器暴露在127.0.0.1
Docker容器内部,而不是主机OS上。如果您访问另一个控制台到您的容器并对其执行http请求,127.0.0.1:8000
则该容器将起作用。
关键是确保Docker容器将开发服务器公开给所有IPv4地址,您可以使用0.0.0.0
代替来实现127.0.0.1
。
尝试运行以下命令来启动Django开发服务器:
python manage.py runserver 0.0.0.0:8000
另外,为了获得更多启发,您可以查看此工作的Dockerfile,以使用内置开发服务器https://github.com/Niklas9/django-
unixdatetimefield/blob/master/Dockerfile
托管Django应用程序。
问题内容: 我正在尝试运行可访问主机上串行端口的Docker容器。 这是我所做的: 我用的是Mac 主机上已安装的驱动程序(http://www.prolific.com.tw/US/ShowProduct.aspx?p_id=229&pcid=41) 插入设备 然归来 -如此奏效 运行容器,然后在没有返回设备的容器内运行… 我用不同的参数变化玩了很多,但是还没有找到有效的参数:) 另外,该标志也
连接到数据库 我在那里没有看到任何桌子,除了原木 我查看了日志,changelog已经在那里工作,并且已经创建了表。
我使用了dockerhub的Jenkins docker图像(https://github.com/jenkinsci/docker) docker build命令已成功执行,容器也已成功启动。 Docker build命令: Docker容器命令: 然后我通过docker run-it myjenkins bash登录到容器。我找不到像config这样的jenkins配置文件。xml,詹金斯。x
我该如何解决?谢谢伙计们
在< code>win7 64bit中安装< code>docker toolbox 我的代码: 我在chrome浏览器中看不到任何结果。 重新安装 192.168.99.100:8000 显示: 运行: 显示: 运行: 显示: 更新 http://192.168.99.100:8000/ docker内部, > < li> 首先检查nginx是否正在运行。 查看哪个进程正在使用端口80
我一直在尝试使用Docker-Compose将Django容器连接到Redis。经过几个小时的修改Docker和Django配置,并尝试了不同的运行方式,我终于发现Redis正在向主机广播。 null 最后我把Redis的Django IP配置改成了Docker主机IP,它工作得很好... 有没有人知道配置所有东西的方法,让Django在内部Docker网络上而不是在外部主机上查找Redis? 我