嗯,我是新来的Docker
我需要在 Docker 容器中实现一个闪亮的应用程序。
我有来自的图像https://hub.docker.com/r/rocker/shiny/ https://hub.docker.com/r/rocker/shiny/, 包括Shiny Server
,但我不知道如何在服务器中部署我的应用程序。
我想在服务器中部署应用程序,将应用程序所需的包安装到 Docker 中,保存更改并导出映像/容器。
正如我所说,我是新来的Docker
我不知道它到底是如何运作的。
任何想法?
我想您应该首先在特定文件夹中创建一个 Dockerfile,如下所示:
FROM rocker/shiny:latest
RUN echo 'install.packages(c("package1","package2", ...), \
repos="http://cran.us.r-project.org", \
dependencies=TRUE)' > /tmp/packages.R \
&& Rscript /tmp/packages.R
EXPOSE 3838
CMD ["/usr/bin/shiny-server.sh"]
然后进入该文件夹并构建图像,并使用以下命令为其命名:
docker build -t your-tag .
最后,一旦构建了图像,您就可以创建一个容器,如果您没有忘记映射卷和端口,您应该能够使用从包含 srv 的文件夹启动以下命令在 localhost:3838 找到它文件夹 :
docker run --rm -p 3838:3838 -v $PWD/srv/shinyapps/:/srv/shiny-server/ -v $PWD/srv/shinylog/:/var/log/shiny-server/ your-tag
正如以下地址的 Docker 文档中所述https://hub.docker.com/r/rocker/shiny/ https://hub.docker.com/r/rocker/shiny/,您可能希望使用 -d 选项以分离模式启动它,并将其映射到主机的端口 80 以进行真正的部署。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)