Giter Site home page Giter Site logo

rstudio-server-docker's Introduction

rstudio-server-docker

docker image with rstudio-server daily version --> docker hub docker image with rstudio-server release version --> docker hub docker image with rstudio-server release version for non root users --> docker hub

Availability

Docker images are available from docker hub (ah3inz3l/rstudio-server).

Usage

Run (Single User)

docker run \
   -d \
   -p8787:8787 \
   -e RUSER="user:pass" \
   -v XXX:/home/user \
   ah3inz3l/rstudio-server notimeout

Run (Multiple Users)

Run container with a single user named user with password pass. See section

docker run \
   -i \
   --rm \
   -p8787:8787 \
   -v XXX:/home/user1 \
   -v XXX:/home/user2 \
   -v XXX:/home/user3 \
   ah3inz3l/rstudio-server notimeout <<USERS
user1:pass1
2000:user2:pass2
2001:3000:user3:pass3
USERS

Run container with multiple users (user1, user2, user3) with passwords (pass1, pass2 etc).

docker run \
   -d \
   -p8787:8787 \
   -e RUSER="$(cat <<USERS
user1:pass1
2000:user2:pass2
2001:3000:user3:pass3
USERS
)" \
   -v XXX:/home/user1 \
   -v XXX:/home/user2 \
   -v XXX:/home/user3 \
   ah3inz3l/rstudio-server notimeout
docker run \
   -d \
   -p8787:8787 \
   -e RUSER="$(cat <<USERS
user1:pass1
2000:user2:pass2
2001:3000:user3:pass3
USERS
)" \
   ah3inz3l/rstudio-server notimeout

Run (non-root user)

Run container with non-root user (singularity without fakeroot and similar). Launches rstudio-server under the non-root user used in the container. Only a single user for rstudio-server is support. Password for rstudio-server must be provided via the environment variable RPASS (replace pass in the example with a password of your choice). Use your container users' user name with the password provided via RPASS to login into rstudio-server. Adapt XXX and CONTAINER-USER to your environment to bind a local folder into the container as the users home-directory.

โš ๏ธ min UID 1000: The user used to run services in the container must have a user id greater or equal than 1000.

singularity run \
   --contain \
   --ipc \
   --cleanenv \
   --writable-tmpfs \
   --bind XXX:/home/CONTAINER-USER \
   --env RPASS=pass \
   "docker://ah3inz3l/rstudio-server:latest-release-singularity"

User Creation (only for images running as root)

User info can be provided via the environment variable (-e) RUSER or STDIN (only in interactive mode). Both options support multiple users whereby data for each user must be provided on a single line. The following formats are supported:

  • user:pass A user named user with password pass; The user will be mapped to the next free uid and a new primary group will be generated for the user.
  • 1000:user:pass A user named user mapped to user id 1000 with password pass; A new primary group will be generated for the user.
  • 1000:2000:user:pass A user named user with password pass. The user will be mapped to user id 1000 and its primary group will be set to group id 2000. In case no group with group id 2000 exists a new group named user will be automatically created.

rstudio-server-docker's People

Contributors

aheinzel avatar

Watchers

 avatar

rstudio-server-docker's Issues

make runnable on singularity without fakeroot

Make a version of the docker image allowing to run rstudio-server using singularity without fakeroot. Possibilities in such an environment are limited but running rstudio-server in single user mode should be achievable.

improve user handling

Improve user handling to allow addition of new users in running containers:

  • ability to add users without recreating the container
  • users should be cached in file so that they can be recreated when container is recreated

locale not set

rstudio-server requires utf8 locale
special characters (like german umlaut) are currently not handled correctly since locale is not setuped correctly

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.