我有一个Bokeh Python代码,可以从Excel文件中导入数据并在Google地图上显示我的供应商位置。Excel文件存储在本地主机的C:\Python文件夹中,Python代码从该文件夹中选择它。当我打开命令提示符并使用命令"Bokeh serve --show Gmaps_Bokeh.py"时,此代码可以正常工作。然而,当我构建Docker文件并将端口5006映射到2000时,在浏览器中无法看到任何内容。
我在主机上创建了一个名为Docker的文件夹,其中包含Gmaps_Bokeh.py、Sid.xls和Dockerfile,在Dockerfile中,我将容器的/Python目录中的所有内容复制过去。
Docker终端显示如下:
我在主机上创建了一个名为Docker的文件夹,其中包含Gmaps_Bokeh.py、Sid.xls和Dockerfile,在Dockerfile中,我将容器的/Python目录中的所有内容复制过去。
Docker终端显示如下:
$ docker run -p 5006:2000 sid
2019-11-03 20:38:43,329 Starting Bokeh server version 1.3.4 (running on
Tornado 6.0.3)
2019-11-03 20:38:43,334 Bokeh app running at:
http://localhost:5006/Gmaps_Bokeh
2019-11-03 20:38:43,334 Starting Bokeh server with process id: 1
Dockerfile contents
FROM python
RUN pip install bokeh
RUN pip install gmaps
RUN pip install pandas
RUN pip install xlrd
WORKDIR /Python
COPY . /Python
EXPOSE 2000
CMD ["bokeh", "serve","/Python/Gmaps_Bokeh.py"]
docker run -p 2000:5006
? - Tonybokeh serve
命令中不应该使用--address 0.0.0.0
吗? - Tonydocker ps
或docker inspect <your-docker-container-id>
返回了什么?你是否尝试使用--name
运行 docker,然后进入 docker 容器 (docker exec -it <name> bash
) 并查看是否与 Bokeh 服务器通信?Docker 网络可能很复杂,也可以参考这里获取一些信息。 - Tony