Docker Jupyter图像没有暴露端口

时间:2018-01-22 13:54:55

标签: docker jupyter-notebook jupyter docker-image

我使用alpine linux创建了Jupyter docker图像。一切都工作正常,但容器没有暴露端口。但是在容器内部端口正在工作。但我无法从我的主机访问。

我写的图像文件如下所示:

FROM vanarajaz/alpine-python

MAINTAINER Vanaraj C "vanaraj@assistanz.com

"RUN python3 -m pip install --upgrade pip && \

python3 -m pip install jupyter

EXPOSE 8888

CMD [ "jupyter", "notebook" ]

创建容器后,我收到以下错误:

[I 13:32:34.019 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret[C 13:32:34.592 NotebookApp] Running as root is not recommended. Use --allow-root to bypass.From:Vanaraj
[I 13:32:34.019 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret[C 13:32:34.592 NotebookApp] Running as root is not recommended. Use --allow-root to bypass.

我不知道如何解决此错误。任何帮助是极大的赞赏。提前谢谢。

1 个答案:

答案 0 :(得分:5)

EXPOSE是构建图像的人与运行容器的人之间的文档。见docker's documentation for more details。它不会影响发布端口的能力,也不会自动为您发布端口。

要发布端口(如果要从主机访问该端口),请使用撰写yml文件的docker run -pports部分。

或者如果您想从容器到容器进行通信,则无需发布端口。所需要的就是两个容器都在同一个docker网络上。