Closed
Add Dockerfile.positron for SSH-based Positron workflows#51
Dockerfile.positron for SSH-based Positron workflows#51Conversation
Copilot
AI
changed the title
[WIP] Add alternative Dockerfile based on Positron
Add Jul 9, 2026
Dockerfile.positron for SSH-based Positron workflows
seandavi
reviewed
Jul 9, 2026
seandavi
left a comment
Collaborator
There was a problem hiding this comment.
Is there not a way to run positron in the browser directly? Positron server or something like that?
Contributor
There was a problem hiding this comment.
Pull request overview
Adds an alternative container build path intended for Positron workflows by introducing a new SSH-based Dockerfile variant, while keeping the existing RStudio-based image and the repository’s workshop-build flow intact.
Changes:
- Added
Dockerfile.positronthat startssshd(port 22) for Remote SSH-based Positron connections. - Documented the Positron/SSH workflow in
README.mdandvignettes/HOWTO_BUILD_WORKSHOP.Rmd. - Excluded
Dockerfile.positronfrom the R package build via.Rbuildignore.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| vignettes/HOWTO_BUILD_WORKSHOP.Rmd | Documents the new Positron/SSH container option alongside the existing GitHub Actions workflow guidance. |
| README.md | Adds usage instructions for building/running the Positron/SSH image variant. |
| Dockerfile.positron | Introduces a new SSH-based container entrypoint intended for Positron Remote SSH workflows. |
| .Rbuildignore | Ensures Dockerfile.positron is excluded from the R package build artifacts. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
|
||
| COPY --chown=rstudio:rstudio . /home/rstudio/ | ||
|
|
||
| RUN Rscript -e "options(repos = c(CRAN = 'https://cran.r-project.org')); devtools::install('.', dependencies=FALSE, build_vignettes=TRUE, upgrade=FALSE)" |
|
|
||
| EXPOSE 22 | ||
|
|
||
| CMD ["/bin/bash", "-lc", "set -euo pipefail; : \"${PASSWORD:?Set PASSWORD to enable SSH login}\"; echo \"rstudio:${PASSWORD}\" | chpasswd; ssh-keygen -A >/dev/null 2>&1; exec /usr/sbin/sshd -D -e"] |
| ```sh | ||
| docker build -f Dockerfile.positron -t buildabiocworkshop-positron . | ||
| export PASSWORD='choose-a-password' | ||
| docker run --rm --env PASSWORD -p 2222:22 buildabiocworkshop-positron |
Comment on lines
+75
to
+77
| You do not need to create a docker image manually. Github actions will read `Dockerfile` located in this template, and using the yaml files will create, build and push to the Github Container Registry an image with the name (default) `ghcr.io/yourgithubuser/yourgithubreponame`, all lowercase. | ||
|
|
||
| If you want a Positron-oriented alternative, this template also ships with `Dockerfile.positron`. Build that variant explicitly with `docker build -f Dockerfile.positron .`; it starts `sshd` so that a locally installed Positron client can attach with Remote SSH instead of using RStudio Server in the browser. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This adds a Positron-oriented container path without changing the existing RStudio-based image. The new variant keeps the current Bioconductor workshop build behavior, but swaps the runtime entrypoint to
sshdso a local Positron client can attach over Remote SSH.New alternative image
Dockerfile.positronalongside the existingDockerfilebioconductor/bioconductor_docker:developenssh-server22and startssshdin the foregroundrstudiouser andPASSWORDenv var for loginBuild/install behavior
/home/rstudioBiocGenerics/Biobaseinto the active site library to avoid relying on the runtime RStudio entrypoint or an extra BiocManager bootstrap stepDocs and packaging
README.mdvignettes/HOWTO_BUILD_WORKSHOP.RmdDockerfile.positronfrom the R package build via.Rbuildignore