{"id":20200391,"url":"https://github.com/nickjer/singularity-rstudio","last_synced_at":"2025-09-23T19:31:02.831Z","repository":{"id":49054021,"uuid":"117994644","full_name":"nickjer/singularity-rstudio","owner":"nickjer","description":"RStudio Server in a Singularity container","archived":false,"fork":false,"pushed_at":"2024-07-17T08:30:13.000Z","size":23,"stargazers_count":54,"open_issues_count":3,"forks_count":41,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-01-07T21:09:19.277Z","etag":null,"topics":["rstudio-server","singularity-image"],"latest_commit_sha":null,"homepage":"https://singularity-hub.org/collections/463","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nickjer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-18T14:38:53.000Z","updated_at":"2024-07-18T14:09:25.000Z","dependencies_parsed_at":"2024-12-24T18:11:04.601Z","dependency_job_id":"5fd8099c-fe3e-4d2c-9cfd-b69bf151e9ef","html_url":"https://github.com/nickjer/singularity-rstudio","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nickjer%2Fsingularity-rstudio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nickjer%2Fsingularity-rstudio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nickjer%2Fsingularity-rstudio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nickjer%2Fsingularity-rstudio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nickjer","download_url":"https://codeload.github.com/nickjer/singularity-rstudio/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":233994617,"owners_count":18762872,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rstudio-server","singularity-image"],"created_at":"2024-11-14T04:43:31.220Z","updated_at":"2025-09-23T19:30:57.514Z","avatar_url":"https://github.com/nickjer.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Singularity RStudio Server\n\n[![Build Status](https://travis-ci.org/nickjer/singularity-rstudio.svg?branch=master)](https://travis-ci.org/nickjer/singularity-rstudio)\n[![Singularity Hub](https://www.singularity-hub.org/static/img/hosted-singularity--hub-%23e32929.svg)](https://singularity-hub.org/collections/463)\n[![GitHub License](https://img.shields.io/badge/license-MIT-green.svg)](https://opensource.org/licenses/MIT)\n\nSingularity image for [RStudio Server]. It was built on top of the base\nSingularity image [nickjer/singularity-r].\n\nThis is still a work in progress.\n\n## Build\n\nYou can build a local Singularity image named `singularity-rstudio.simg` with:\n\n```sh\nsudo singularity build singularity-rstudio.simg Singularity\n```\n\n## Deploy\n\nInstead of building it yourself you can download the pre-built image from\n[Singularity Hub](https://www.singularity-hub.org) with:\n\n```sh\nsingularity pull --name singularity-rstudio.simg shub://nickjer/singularity-rstudio\n```\n\n## Run\n\n### RStudio Server\n\nThe `rserver` command is launched using the default run command:\n\n```sh\nsingularity run singularity-rstudio.simg\n```\n\nor as an explicit app:\n\n```sh\nsingularity run --app rserver singularity-rstudio.simg\n```\n\nExample:\n\n```console\n$ singularity run --app rserver singularity-rstudio.simg --help\ncommand-line options:\n\nverify:\n  --verify-installation arg (=0)        verify the current installation\n\nserver:\n  --server-working-dir arg (=/)         program working directory\n  --server-user arg (=rstudio-server)   program user\n  --server-daemonize arg (=0)           run program as daemon\n  --server-app-armor-enabled arg (=1)   is app armor enabled for this session\n  --server-set-umask arg (=1)           set the umask to 022 on startup\n\n...\n```\n\n#### Simple Password Authentication\n\nTo secure the RStudio Server you will need to:\n\n1. Launch the container with the environment variable `RSTUDIO_PASSWORD` set to\n   a password of your choosing.\n2. Launch the `rserver` command with the PAM helper script `rstudio_auth`.\n\nAn example is given as:\n\n```sh\nRSTUDIO_PASSWORD=\"password\" singularity run singularity-rstudio.simg \\\n  --auth-none 0 \\\n  --auth-pam-helper rstudio_auth\n```\n\nNow when you attempt to access the RStudio Server you will be presented with a\nlog in form. You can log in with your current user name and password you set in\n`RSTUDIO_PASSWORD`.\n\n#### LDAP Authentication\n\nAnother option is using an LDAP (or Active Directory) server for\nauthentication. Configuration of the LDAP authentication script `ldap_auth` is\nhandled through the following environment variables:\n\n- `LDAP_HOST` - the host name of the LDAP server\n- `LDAP_USER_DN` - the formatted string (where `%s` is replaced with the\n  username supplied during log in) of the bind DN used for LDAP authentication\n- `LDAP_CERT_FILE` - the file containing the CA certificates used by\n  the LDAP server (default: use system CA certificates)\n\nAn example for an LDAP server with signed SSL certificate from a trusted CA:\n\n```sh\nexport LDAP_HOST=ldap.example.com\nexport LDAP_USER_DN='cn=%s,dc=example,dc=com'\nsingularity run singularity-rstudio.simg \\\n  --auth-none 0 \\\n  --auth-pam-helper-path ldap_auth\n```\n\nAn example for an LDAP server with a self-signed SSL certificate:\n\n```sh\nexport LDAP_HOST=ldap.example.com\nexport LDAP_USER_DN='cn=%s,dc=example,dc=com'\nexport LDAP_CERT_FILE=/ca-certs.pem\nsingularity run \\\n  --bind /path/to/ca-certs.pem:/ca-certs.pem \\\n  singularity-rstudio.simg \\\n    --auth-none 0 \\\n    --auth-pam-helper-path ldap_auth\n```\n\nNote that we had to bind mount the CA certificates file from the host machine\ninto the container and specify the container's path in `LDAP_CERT_FILE` (not\nthe host's path).\n\n### R and Rscript\n\nSee [nickjer/singularity-r] for more information on how to run `R` and\n`Rscript` from within this Singularity image.\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at\nhttps://github.com/nickjer/singularity-rstudio.\n\n## License\n\nThe code is available as open source under the terms of the [MIT License].\n\n\n[RStudio Server]: https://www.rstudio.com/products/rstudio/\n[nickjer/singularity-r]: https://github.com/nickjer/singularity-r\n[MIT License]: http://opensource.org/licenses/MIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnickjer%2Fsingularity-rstudio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnickjer%2Fsingularity-rstudio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnickjer%2Fsingularity-rstudio/lists"}