2017-08-28 35 views
3

我尝试使用Docker安装Rstudio-connect。 我试图使用ubuntu,centos和摇杆/ tidyverse基本图像。没有成功...使用docker运行Rstudio-connect

这是我制作的Dockerfile。

FROM ubuntu 
RUN apt-get update 
RUN apt-get install -y gdebi-core 
RUN apt-get install -y build-essential libcurl4-gnutls-dev libxml2-dev libssl-dev 
RUN apt-get install -y r-base 
RUN apt-get autoclean 
RUN apt-get clean 
RUN apt-get install -y texlive-full 
RUN apt-get install -y libgmp10-dev libgsl0-dev libnetcdf-dev netcdf-bin libdigest-hmac-perl libgmp-dev libgmp3-dev libgl1-mesa-dev libglu1-$ 
RUN apt-get install -y net-tools 
RUN apt-get install -y procps 

RUN gdebi -n rstudio-connect.deb 
COPY rstudio-connect-*-amd64.deb rstudio-connect.deb 
EXPOSE 3939 

使用此容器,我无法运行rstudio连接。 我有这个错误:“没有已知的init系统检测到。” 从部份脚本/var/lib/dpkg/info/rstudio-connect.postinst 无论如何,我试图用手

systemctl enable rstudio-connect.service 
    systemctl stop rstudio-connect.service 
    systemctl start rstudio-connect.service 
    cp /opt/rstudio-connect/packaging/init/upstart/rstudio-connect.conf /etc/init/rstudio-connect.conf 

推出,但我有这样的错误:

> [email protected]:/# systemctl enable rstudio-connect.service Created 
symlink 
> /etc/systemd/system/multi-user.target.wants/rstudio-connect.service, 
pointing to /lib/systemd/system/rstudio-connect.service. 
> [email protected]:/# systemctl start rstudio-connect.service Failed to 
connect to bus: No such file or directory 

如果我直接运行./connect

这是啥子我获得:

> [email protected]:/opt/rstudio-connect/bin# ./connect --config /etc/rstudio-connect/rstudio-connect.gcfg 
2017/08/28 12:14:14 Resource limits: {"nofile":{"soft":1048576,"hard":1048576}} 
2017/08/28 12:14:14 Starting RStudio Connect v1.5.4-13 
2017/08/28 12:14:14 Loading server configuration from /etc/rstudio-connect/rstudio-connect.gcfg 
2017/08/28 12:14:14 Creating data directory: /var/lib/rstudio-connect 
2017/08/28 12:14:14 Creating database directory: /var/lib/rstudio-connect/db 
2017/08/28 12:14:14 Creating metrics directory: /var/lib/rstudio-connect/metrics/rrd 
2017/08/28 12:14:14 Creating applications directory: /var/lib/rstudio-connect/apps 
2017/08/28 12:14:14 Creating application bookmarks directory: /var/lib/rstudio-connect/bookmarks 
2017/08/28 12:14:14 Creating document output directory: /var/lib/rstudio-connect/reports 
2017/08/28 12:14:14 Creating document customization directory: /var/lib/rstudio-connect/overrides 
2017/08/28 12:14:14 Creating manual document customization directory: /var/lib/rstudio-connect/overrides/manual 
2017/08/28 12:14:14 Creating document variant customizations directory: /var/lib/rstudio-connect/overrides/variant 
2017/08/28 12:14:14 Creating R library directory: /var/lib/rstudio-connect/R 
2017/08/28 12:14:14 Checking ownership and permissions for the R library directory: /var/lib/rstudio-connect/R 
2017/08/28 12:14:14 Creating Packrat cache directory: /var/lib/rstudio-connect/packrat 
2017/08/28 12:14:14 Checking ownership and permissions for the Packrat cache directory: /var/lib/rstudio-connect/packrat 
2017/08/28 12:14:14 Creating jobs directory: /var/lib/rstudio-connect/jobs 
2017/08/28 12:14:14 Creating jobs-spool directory: /var/lib/rstudio-connect/jobs-spool 
2017/08/28 12:14:14 Creating bundle directory: /var/lib/rstudio-connect/bundles 
2017/08/28 12:14:14 Creating base bind mount directory: /opt/rstudio-connect/mnt 
2017/08/28 12:14:14 Creating application bind mount directory: /opt/rstudio-connect/mnt/app 
2017/08/28 12:14:14 Creating application bookmarks bind mount directory: /opt/rstudio-connect/mnt/bookmarks 
2017/08/28 12:14:14 Creating document output bind mount directory: /opt/rstudio-connect/mnt/report 
2017/08/28 12:14:14 Creating R library bind mount directory: /opt/rstudio-connect/mnt/R 
2017/08/28 12:14:14 Creating packrat bind mount directory: /opt/rstudio-connect/mnt/packrat 
2017/08/28 12:14:14 Creating source package bind mount directory: /opt/rstudio-connect/mnt/source-packages 
2017/08/28 12:14:14 Creating empty bind mount directory: /opt/rstudio-connect/mnt/empty 
2017/08/28 12:14:14 Using HTTP access log: /var/log/rstudio-connect.access.log 
2017/08/28 12:14:14 Starting licensing... 
2017/08/28 12:14:15 Could not detect R at /usr/lib/R/bin/R: Could not run R as rstudio-connect; exit status 1; received output: '28 Aug 2017 12:14:15 [rsandbox] ERROR system error 1 (Operation not permitted); OCCURRED AT: int main(int, char* const*) /home/ubuntu/rstudio-pro/src/cpp/server/sandbox/SandboxMain.cpp:136; LOGGED FROM: int main(int, char* const*) /home/ubuntu/rstudio-pro/src/cpp/server/sandbox/SandboxMain.cpp:137 
' 
2017/08/28 12:14:15 Could not detect R at /usr/bin/R: Could not run R as rstudio-connect; exit status 1; received output: '28 Aug 2017 12:14:15 [rsandbox] ERROR system error 1 (Operation not permitted); OCCURRED AT: int main(int, char* const*) /home/ubuntu/rstudio-pro/src/cpp/server/sandbox/SandboxMain.cpp:136; LOGGED FROM: int main(int, char* const*) /home/ubuntu/rstudio-pro/src/cpp/server/sandbox/SandboxMain.cpp:137 
' 
2017/08/28 12:14:15 Error: Unable to use R on this system: Could not locate an R installation 

但R存在,并且rstudio-connect用户可以运行它!

有什么想法吗?

问候

回答

2

Connect使用一个使用相同的机制多克尔隐藏从可执行用户代码某些目录的沙箱。您需要以“特权”模式运行容器。试试做​​

+0

完美!谢谢 –