如何在Windows中创建现有R Shiny应用程序的docker映像?

时间:2019-09-05 09:32:19

标签: r windows docker shiny

R闪亮应用的docker化过程是通过摇杆/发光图像完成的。我需要从Windows系统在R Shiny应用程序上运行dockerization。唯一的问题是,此过程使用的rocker / shiny是基于Linux的容器。因此,我无法生成在Windows系统上运行的图像。出于安全原因,我不能选择使用外部VPS或VM。

我尝试编写一个可在Windows上运行的docker文件,但问题是该容器基于Linux。

我的Dockerfile

FROM rocker/r-ver:3.5.1 

#installing R libraries

RUN R -e "install.packages(c('shiny', 'shinydashboard'), repos='http://cran.us.r-project.org')"

# Copy configuration files into the Docker image
COPY shiny-server.conf  /etc/shiny-server/shiny-server.conf
COPY /app/srv/shiny-server/

# Make the ShinyApp available at port 80
EXPOSE 80

#Copy further configuration files into the Docker image
COPY shiny-server.sh /usr/bin/shiny-server.sh

CMD ['Rscript', 'app_run.R'] 
(original documentation mentions a .sh file which is not running on my system 
because of the Linux windows file path issues)

运行2条命令后,我希望我的闪亮应用程序可以在localhost:8080上运行

Get-Content Dockerfile | docker build -

docker run --name DOCKERapp -p 8080:8080 <image_name>

1 个答案:

答案 0 :(得分:0)

您的dockerfile中的基础是rocker / r-ver:3.5.1,此映像的基础是debian。您可以在这里查看: https://hub.docker.com/r/rocker/r-ver/dockerfile

因此,在您的dockerfile中,您需要使用linux命令。您不需要使用Windows命令。