Running RStudio Workbench / RStudio Server on IBM/Power8

Follow
Regular RStudio Workbench (previously RStudio Server Pro) binaries won't work on the Power8 servers. RStudio Workbench requires x86 based processors. The IBM Power processors have a different architecture than x86. Providing Power8 binaries would require us to compile RStudio from scratch on an actual PowerPC-based machine. The work we'd need to is nontrivial. It is outlined here:
 
 
 

Comments

  • Avatar
    Indrajit Poddar

    Hello Nathan,

    The article that you have referenced is very much dated. Currently POWER8 servers support Ubuntu and several other Linux distros in little endian mode which are very much compatible in terms of availability of software packages. This tool can be used to locate necessary packages on power on Ubuntu and other distros:
    https://developer.ibm.com/linuxonpower/open-source-pkgs/

    Also here is an excerpt of a Dockerfile to build RStudio server on POWER, we are working on publishing this to an open source repo:
    ## Start with the official rocker image providing 'base R'
    #FROM r-base:latest
    FROM ppc64le/ubuntu:trusty

    ## This handle reaches Carl and Dirk
    #MAINTAINER "Carl Boettiger and Dirk Eddelbuettel" rocker-maintainers@eddelbuettel.com

    ## Add RStudio binaries to PATH
    ENV PATH /usr/lib/rstudio-server/bin/:$PATH

    #RUN sh -c "echo 'deb http://ftp.de.debian.org/debian jessie main' >> /etc/apt/sources.list"

    ## Download and install RStudio server & dependencies
    ## Attempts to get detect latest version, otherwise falls back to version given in $VER
    ## Symlink pandoc, pandoc-citeproc so they are available system-wide
    RUN rm -rf /var/lib/apt/lists/ \
    && apt-get update \
    && apt-get install libssl1.0.0 \
    && apt-get install -y \
    ca-certificates \
    file \
    git \
    libapparmor1 \
    libedit2 \
    libcurl4-openssl-dev \
    libssl-dev \
    psmisc \
    python-setuptools \
    sudo \
    wget
    #
    # && VER=$(wget --no-check-certificate -qO- https://s3.amazonaws.com/rstudio-server/current.ver) \
    # && wget -q http://download2.rstudio.org/rstudio-server-${VER}-amd64.deb \
    # && dpkg -i rstudio-server-${VER}-amd64.deb \
    # && rm rstudio-server-*-amd64.deb \
    #
    RUN sudo apt-get update
    RUN sudo apt-get -y upgrade
    RUN sudo apt-get -y install r-base
    RUN apt-get -y install r-base-dev
    RUN mkdir rstudio
    RUN cd rstudio
    RUN wget https://github.com/rstudio/rstudio/tarball/v0.99.903
    RUN tar zxvf ./v0.99.903 -C rstudio
    RUN ls -al

    RUN sudo apt-get update
    RUN sudo apt-get -y install build-essential g++ python-dev autotools-dev libicu-dev build-essential libbz2-dev libboost-all-dev
    RUN sudo apt-get -y install libbz2-dev

    RUN apt-get -y install haskell-platform

    RUN sudo apt-get -y install build-essential
    RUN sudo apt-get -y install pkg-config
    RUN sudo apt-get -y install fakeroot
    RUN sudo apt-get -y install cmake

    # core system libraries
    RUN sudo apt-get -y install uuid-dev
    RUN sudo apt-get -y install libssl-dev
    RUN sudo apt-get -y install libbz2-dev
    RUN sudo apt-get -y install zlib1g-dev
    RUN sudo apt-get -y install libpam-dev

    # needed for QtWebKit >= 5
    RUN sudo apt-get -y install libxslt1-dev

    # app armor dependencies no longer included in ubuntu >= 11.10
    RUN sudo apt-get -y install libapparmor1
    RUN sudo apt-get -y install apparmor-utils
    RUN sudo apt-get -y install libpango1.0-dev
    RUN sudo apt-get -y install ant
    RUN sudo apt-get -y install unzip
    #installing pandoc

    RUN sudo apt-get -y install haskell-platform
    RUN sudo apt-get update

    RUN apt-get -y install pandoc pandoc-citeproc
    #prepare pre-reqs
    WORKDIR /rstudio/rstudio-rstudio-0eb2d8e/dependencies/
    RUN pwd
    COPY ./common/* ./common/
    RUN ls -al

    WORKDIR /rstudio/rstudio-rstudio-0eb2d8e/dependencies/linux/
    RUN ./install-dependencies-debian --exclude-qt-sdk
    WORKDIR /rstudio/rstudio-rstudio-0eb2d8e/
    RUN mkdir build
    WORKDIR build

    #install java sdk
    RUN sudo apt-get update
    RUN sudo apt-get install -y openjdk-7-jdk
    RUN apt-get -y install pandoc pandoc-citeproc
    #installation of RSTUDION

    RUN cmake .. -DRSTUDIO_TARGET=Server -DCMAKE_BUILD_TYPE=Release
    RUN make install

    #post installation steps according to INSTALL doc

    RUN sudo useradd -r rstudio-server
    RUN cp /usr/local/lib/rstudio-server/extras/init.d/debian/rstudio-server /etc/init.d/
    RUN ls -al /etc/init.d/rstudio*
    RUN sudo update-rc.d rstudio-server defaults
    RUN sudo ln -f -s /usr/local/lib/rstudio-server/bin/rstudio-server /usr/sbin/rstudio-server
    RUN mkdir -p /var/run/rstudio-server
    RUN mkdir -p /var/lock/rstudio-server
    RUN mkdir -p /var/log/rstudio-server
    RUN mkdir -p /var/lib/rstudio-server

    #------------------------------------------------------------
    # sudo rstudio-server start
    #temp part only for test purpose to check if server starts

    EXPOSE 8787

    ## Expose a default volume for Kitematic
    VOLUME /home/rstudio

    #CMD ["/usr/sbin/rstudio-server","start"]
    CMD ["/bin/bash"]
    #-------------------------------------------------------------