【发布时间】:2018-09-13 16:08:53
【问题描述】:
我正在使用安装了 Docker 的 Windows 10 Pro。我在我的计算机上$ docker pull rocker/shiny 图像并按照文档https://hub.docker.com/r/rocker/shiny/ 中的描述使用以下命令启动它:
docker run -d -p 80:3838 -v C:\\Users\\<My name>\\Documents\\R\\Rprojects\\ShinyHelloWorld\\:/srv/shiny-server/ -v C:\\Users\\<My name>\\Documents\\R\\Rprojects\\ShinyHelloWorld\\:/var/log/shiny-server/ rocker/shiny
容器创建成功:
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f0ee402966b9 rocker/shiny "/usr/bin/shiny-serv…" 2 minutes ago Up 2 minutes 0.0.0.0:80->3838/tcp youthful_banach
我使用 RStudio 创建了 ShinyHelloWorld 应用程序,我挂载到 docker 容器的本地主机上的文件夹基本上包含一个文件 app.R,其中默认的闪亮应用程序由 RStudio 创建。
现在的问题是:我无法使用地址http://localhost:3838/ShinyHelloWorld/ 从浏览器运行此应用程序。
当我使用 URL http://localhost:3838 时,它返回带有单句 Index of / 的网页。所以,有人在听。
我是否正确运行了闪亮的服务器?
我想我在浏览器中使用了错误的 URL 来访问服务器。如何正确操作?
我需要在服务器上安装一些闪亮的应用程序吗?
是否可以使用令牌运行闪亮的服务器,例如: http://localhost:8888/?token=44dab68c1bc7b1662041853573f37cfa03f13d029d397816 如所述,例如在书中为COOK, J.: Docker for Data Science: Building Scalable and Extensible Data Infrastructure Around the Jupyter Notebook Server: Apress., 2017
如果存在token如何找到?
假设我想使用docker-compose.yml,然后是$ docker-compose up。请帮助完成下面的脚本以执行与上面相同的命令。
version: "3"
services:
image: rocker/shiny
volumes:
- C:\\Users\\aabor\\Documents\\R\\Rprojects\\ShinyHelloWorld:/srv/shiny-server/
- C:\\Users\\aabor\\Documents\\R\\Rprojects\\ShinyHelloWorld:/var/log/shiny-server/
ports:
- 80:3838
container_name: rocker-shiny-container
【问题讨论】:
-
在
Windows和boot2docker上,您需要访问192.168.59.103:3838 参见usage -
我不使用
boot2docker,在这种特殊情况下没有必要。
标签: docker shiny shiny-server