在localhost上运行docker项目,但什么都没有出现

时间:2017-08-19 23:01:57

标签: python docker

我有一个构建的docker镜像。我想在localhost上运行它,并在我的本地计算机上查看该项目。当我运行图像时,我在docker ps中看到它。当我去localhost时,我什么都没得到。我不确定它是否是我试图运行的端口或权限,或类似的东西......

这是我正在运行的命令:

λ docker run -p 5050:80 opentab

这是在图像构建之后:

Successfully built 7e995fbdf2ea
Successfully tagged opentab:latest
SECURITY WARNING: You are building a Docker image from Windows against a non-Windows Docker host. All files and directories added to build context will have '-rwxr-xr-x' permissions. It is recommended to double check and reset permissions for sensitive files and directories.

这是docker文件:

FROM python:3
WORKDIR /usr/src/app
COPY requirements.txt ./

EXPOSE 80

RUN pip install --no-cache-dir -r requirements.txt
COPY . .

CMD ["python", "manage.py", "runserver"]

我不得不从需求文件中删除以下内容,因为它们导致了错误:

蟒 源码 TK ZX

1 个答案:

答案 0 :(得分:1)

两件事:

1)println仅默认绑定到localhost。此本地主机位于容器内,而不是计算机上。因此,您希望将应用程序绑定到所有接口,如下所示:

manage.py runserver

2)python manage.py runserver 0.0.0.0 默认绑定到端口8000。所以,有两种选择。一,你可以将manage.py runserver绑定到端口80,如下所示:

manage.py runserver

或者,您将更改dockerfile,将python manage.py runserver 0.0.0.0.0:80 替换为EXPOSE 80,并将docker命令更改为EXPOSE 8000