Skip to content

posit-dev/images-workbench

Repository files navigation

Posit Workbench Container Images

Container images for Posit Workbench.

Note

These images are in preview as Posit migrates container images from rstudio/rstudio-docker-products. The existing images remain supported.

Prerequisites

Tool Required for Install
Docker Running containers locally Get Docker
Helm Deploying on Kubernetes Install Helm
kubectl Deploying on Kubernetes Install kubectl
Product license Running Posit Workbench Licensing FAQ

Images

Image Docker Hub GitHub Container Registry
workbench docker.io/posit/workbench ghcr.io/posit-dev/workbench
workbench-session docker.io/posit/workbench-session ghcr.io/posit-dev/workbench-session
workbench-session-init docker.io/posit/workbench-session-init ghcr.io/posit-dev/workbench-session-init
workbench-positron-init docker.io/posit/workbench-positron-init ghcr.io/posit-dev/workbench-positron-init

Additional Posit container images are published to Docker Hub and GitHub Container Registry.

Running the Images

The fastest way to get started is to pull and run a pre-built image. See each image's documentation for Quick Start examples, configuration, and environment variables.

See the Workbench installation guide for full setup instructions.

Deploying on Kubernetes

Use the Posit Workbench Helm chart to deploy on Kubernetes.

helm repo add rstudio https://helm.rstudio.com
helm repo update

Create a Kubernetes secret from your license file, then configure the chart in your values.yaml:

kubectl create secret generic posit-workbench-license \
  --from-file=license.lic=/path/to/license.lic
image:
  repository: ghcr.io/posit-dev/workbench
  tag: "2026.01.2"

license:
  file:
    secret: posit-workbench-license

session:
  image:
    repository: ghcr.io/posit-dev/workbench-session
    tag: "R4.5.2-python3.14.3-ubuntu-24.04"

config:
  server:
    rserver.conf:
      launcher-sessions-init-container-image-name: ghcr.io/posit-dev/workbench-session-init
      launcher-sessions-init-container-image-tag: "2026.01.2"

The rserver.conf entries configure Workbench to use the new session init container image.

Install command:

helm upgrade --install workbench rstudio/rstudio-workbench --values values.yaml

See the full chart documentation for all available values.

Building from Source

You can interact with this repository in multiple ways:

Build

You can build OCI container images from the definitions in this repository using one of the following container build tools:

The root of the bakery project is used as the build context for each Containerfile. Here, the bakery.yaml file, or project, is in the root of this repository.

PWB_VERSION="2026.01"

# Build the standard Workbench image using docker
docker buildx build \
    --tag workbench:${PWB_VERSION} \
    --file workbench/${PWB_VERSION}/Containerfile.ubuntu2404.std \
    .

# Build the minimal Workbench image using buildah
buildah build \
    --tag workbench:${PWB_VERSION} \
    --file workbench/${PWB_VERSION}/Containerfile.ubuntu2404.min \
    .

# Build the minimal Workbench image using podman
podman build \
    --tag workbench:${PWB_VERSION} \
    --file workbench/${PWB_VERSION}/Containerfile.ubuntu2404.min \
    .

Using bakery

The structure and contents of this repository were created following the steps in bakery usage.

Additional documentation:

Prerequisites

Build prerequisites

  • python

  • uv

  • docker buildx bake

  • just

  • gh (required while repositories are private)

  • bakery

    just install bakery
  • goss and dgoss for running image validation tests

    just install-goss

Build with bakery

By default, bakery creates an ephemeral JSON bakefile to render all containers in parallel.

bakery build

You can view the bake plan using bakery build --plan.

You can use CLI flags to build only a subset of images in the project.

Test images

After building the container images, run the test suite for all images:

bakery run dgoss

You can use CLI flags to limit the tests to run against a subset of images.

Related Repositories

This repository is part of the Posit Container Images ecosystem. To extend the Minimal image with additional languages or system dependencies, see the extending examples. For shared build tooling and CI workflows, see images-shared.

Share your Feedback

We invite you to join us on GitHub Discussions to ask questions and share feedback.

Issues

If you encounter any issues or have any questions, please open an issue. We appreciate your feedback.

Code of Conduct

We expect all contributors to adhere to the project's Code of Conduct and create a positive and inclusive community.

License

Posit Container Images and associated tooling are licensed under the MIT License

About

Posit Workbench Container Images

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

 
 
 

Contributors