GithubHelp home page GithubHelp logo

wahalulu / puppet-rstudio Goto Github PK

View Code? Open in Web Editor NEW

This project forked from marcindulak/puppet-rstudio

1.0 0.0 0.0 139 KB

unmaintained: Yet another RStudio Module for Puppet

License: Other

Puppet 88.79% HTML 11.21%

puppet-rstudio's Introduction


Description

Warning: not maintained anymore!

A puppet module that installs and configures an RStudio server, and optionally, apache/nginx localhost proxy, on amd64 Debian(Ubuntu) or x86_64 RHEL(Fedora) The module does not use any available apache/nginx or other puppet modules.

Tested on: Debian 7/8, Ubuntu 14.04, and RHEL 6/7, Fedora 20.


Sample Usage

Assuming you have Vagrant installed from https://www.vagrantup.com/downloads.html test the module with::

    $ git clone https://github.com/marcindulak/puppet-rstudio.git
    $ cd puppet-rstudio

If you prefer using nginx instead of the default apache, do::

    $ sed -i '/::apache/d' tests/site.pp
    $ sed -i 's/#//' tests/site.pp

Then start and provision virtual machines (VM) with::

    $ vagrant up

Test the basic HTTP from RStudio with curl or firefox, e.g. on the RHEL6 machine::

    $ vagrant ssh rhel6 -c "sudo su -c 'service iptables stop'"
    $ curl -v http://127.0.0.1:8410
    $ firefox http://127.0.0.1:8410

See Vagrantfile for the port numbers.

Note: in order to login into an RStudio running in Vargant's VM you would need to create a user inside of VM.

When done, destroy the test machines with::

    $ vagrant destroy -f
  1. Configuration

See the configuration options in manifests/params.pp. The version of rstudio-server is hard-coded in manifests/init.pp

  1. Install the module and dependencies

  • on Debian/Ubuntu::

      $ sudo apt-get -y install puppet git
      $ cd /etc/puppet/modules
      $ sudo mkdir -p ../manifests
      $ sudo git clone https://github.com/marcindulak/puppet-rstudio.git
      $ sudo ln -s puppet-rstudio rstudio
    
  • on RHEL/Fedora (on RHEL enable the EPEL repository https://fedoraproject.org/wiki/EPEL)::

      $ su -c "yum -y install puppet git"
      $ cd /etc/puppet/modules
      $ su -c "mkdir -p ../manifests"
      $ su -c "git clone https://github.com/marcindulak/puppet-rstudio.git"
      $ su -c "ln -s puppet-rstudio rstudio"
    
  1. Configure the module:

As root user, create the /etc/puppet/manifests/site.pp file::

node default {
    include rstudio
    include rstudio::apache
    #include rstudio::nginx
}

Change permissions so only root can read your credentials::

    # chmod go-rwx /etc/puppet/manifests/site.pp
  1. Apply the module:

  • on Debian/Ubuntu:

      $ sudo puppet apply --verbose --debug /etc/puppet/manifests/site.pp
    
  • on RHEL/Fedora:

      $ su -c "puppet apply --verbose /etc/puppet/manifests/site.pp"
    

Dependencies

None


Todo

Maybe a more recent version of RStudio improves this?

  1. proxies (more often nginx) are not working on all platforms.

  2. upstart start/stop of rstudio-server hangs on Ubuntu 14.04. Permanently disabling apparmor does not seem to help: https://support.rstudio.com/hc/en-us/articles/200717193-RStudio-Server-Will-Not-Start

  3. In version 0.98.1091 there is an old openssl dependency trailing.

puppet-rstudio's People

Contributors

marcindulak avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.