{"id":49382379,"url":"https://github.com/posit-dev/images-workbench","last_synced_at":"2026-04-28T06:05:04.538Z","repository":{"id":347033751,"uuid":"842240790","full_name":"posit-dev/images-workbench","owner":"posit-dev","description":"Posit Workbench Container Images","archived":false,"fork":false,"pushed_at":"2026-04-22T19:09:01.000Z","size":291,"stargazers_count":0,"open_issues_count":11,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-04-22T19:24:47.915Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://docs.posit.co/ide/server-pro","language":"Jinja","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/posit-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-08-14T00:36:01.000Z","updated_at":"2026-04-22T13:37:27.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/posit-dev/images-workbench","commit_stats":null,"previous_names":["posit-dev/images-workbench"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/posit-dev/images-workbench","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/posit-dev%2Fimages-workbench","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/posit-dev%2Fimages-workbench/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/posit-dev%2Fimages-workbench/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/posit-dev%2Fimages-workbench/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/posit-dev","download_url":"https://codeload.github.com/posit-dev/images-workbench/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/posit-dev%2Fimages-workbench/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32368537,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-27T20:07:02.737Z","status":"online","status_checked_at":"2026-04-28T02:00:07.250Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2026-04-28T06:05:03.705Z","updated_at":"2026-04-28T06:05:04.526Z","avatar_url":"https://github.com/posit-dev.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Posit Workbench Container Images\n\nContainer images for [Posit Workbench](https://docs.posit.co/ide/server-pro).\n\n\u003e [!NOTE]\n\u003e These images are in preview as Posit migrates container images from [rstudio/rstudio-docker-products](https://github.com/rstudio/rstudio-docker-products). The existing images remain supported.\n\n## Prerequisites\n\n| Tool | Required for | Install |\n|------|-------------|---------|\n| [Docker](https://docs.docker.com/get-docker/) | Running containers locally | [Get Docker](https://docs.docker.com/get-docker/) |\n| [Helm](https://helm.sh/docs/intro/install/) | Deploying on Kubernetes | [Install Helm](https://helm.sh/docs/intro/install/) |\n| [kubectl](https://kubernetes.io/docs/tasks/tools/) | Deploying on Kubernetes | [Install kubectl](https://kubernetes.io/docs/tasks/tools/) |\n| Product license | Running Posit Workbench | [Licensing FAQ](https://docs.posit.co/licensing/licensing-faq.html) |\n\n## Images\n\n| Image | Docker Hub | GitHub Container Registry |\n|:------|:-----------|:--------------------------|\n| [workbench](./workbench/) | [`docker.io/posit/workbench`](https://hub.docker.com/r/posit/workbench) | [`ghcr.io/posit-dev/workbench`](https://github.com/posit-dev/images-workbench/pkgs/container/workbench) |\n| [workbench-session](./workbench-session/) | [`docker.io/posit/workbench-session`](https://hub.docker.com/r/posit/workbench-session) | [`ghcr.io/posit-dev/workbench-session`](https://github.com/posit-dev/images-workbench/pkgs/container/workbench-session) |\n| [workbench-session-init](./workbench-session-init/) | [`docker.io/posit/workbench-session-init`](https://hub.docker.com/r/posit/workbench-session-init) | [`ghcr.io/posit-dev/workbench-session-init`](https://github.com/posit-dev/images-workbench/pkgs/container/workbench-session-init) |\n| [workbench-positron-init](./workbench-positron-init/) | [`docker.io/posit/workbench-positron-init`](https://hub.docker.com/r/posit/workbench-positron-init) | [`ghcr.io/posit-dev/workbench-positron-init`](https://github.com/posit-dev/images-workbench/pkgs/container/workbench-positron-init) |\n\nAdditional Posit container images are published to [Docker Hub](https://hub.docker.com/u/posit) and [GitHub Container Registry](https://github.com/orgs/posit-dev/packages).\n\n## Running the Images\n\nThe 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.\n\n- [Posit Workbench](./workbench/) — The Workbench server\n- [Workbench Session](./workbench-session/) — Session images for Kubernetes\n- [Workbench Session Init](./workbench-session-init/) — Init container for Kubernetes session deployments\n- [Workbench Positron Init](./workbench-positron-init/) — Init container for Positron IDE in Kubernetes\n\nSee the [Workbench installation guide](https://docs.posit.co/ide/server-pro/getting_started/installation/) for full setup instructions.\n\n## Deploying on Kubernetes\n\nUse the [Posit Workbench Helm chart](https://docs.posit.co/helm/charts/rstudio-workbench/README.html) to deploy on Kubernetes.\n\n```bash\nhelm repo add rstudio https://helm.rstudio.com\nhelm repo update\n```\n\nCreate a Kubernetes secret from your license file, then configure the chart in your `values.yaml`:\n\n```bash\nkubectl create secret generic posit-workbench-license \\\n  --from-file=license.lic=/path/to/license.lic\n```\n\n```yaml\nimage:\n  repository: ghcr.io/posit-dev/workbench\n  tag: \"2026.01.2\"\n\nlicense:\n  file:\n    secret: posit-workbench-license\n\nsession:\n  image:\n    repository: ghcr.io/posit-dev/workbench-session\n    tag: \"R4.5.2-python3.14.3-ubuntu-24.04\"\n\nconfig:\n  server:\n    rserver.conf:\n      launcher-sessions-init-container-image-name: ghcr.io/posit-dev/workbench-session-init\n      launcher-sessions-init-container-image-tag: \"2026.01.2\"\n```\n\nThe `rserver.conf` entries configure Workbench to use the new session init container image.\n\nInstall command:\n```bash\nhelm upgrade --install workbench rstudio/rstudio-workbench --values values.yaml\n```\n\nSee the [full chart documentation](https://docs.posit.co/helm/charts/rstudio-workbench/README.html) for all available values.\n\n## Building from Source\n\nYou can interact with this repository in multiple ways:\n\n* [Build container images directly](#build) from the Containerfile.\n* [Use the `bakery` CLI](#using-bakery) to manage and build container images.\n* Extend the functionality by using the Minimal base image (see [examples](https://github.com/posit-dev/images-examples)).\n\n## Build\n\nYou can build OCI container images from the definitions in this repository using one of the following container build tools:\n\n* [buildah](https://github.com/containers/buildah/blob/main/install.md)\n* [docker buildx](https://github.com/docker/buildx#installing)\n\nThe root of the bakery project is used as the build context for each Containerfile.\nHere, the [`bakery.yaml`](https://github.com/posit-dev/images-shared/blob/main/posit-bakery/CONFIGURATION.md#bakery-configuration) file, or project, is in the root of this repository.\n\n```shell\nPWB_VERSION=\"2026.01\"\n\n# Build the standard Workbench image using docker\ndocker buildx build \\\n    --tag workbench:${PWB_VERSION} \\\n    --file workbench/${PWB_VERSION}/Containerfile.ubuntu2404.std \\\n    .\n\n# Build the minimal Workbench image using buildah\nbuildah build \\\n    --tag workbench:${PWB_VERSION} \\\n    --file workbench/${PWB_VERSION}/Containerfile.ubuntu2404.min \\\n    .\n\n# Build the minimal Workbench image using podman\npodman build \\\n    --tag workbench:${PWB_VERSION} \\\n    --file workbench/${PWB_VERSION}/Containerfile.ubuntu2404.min \\\n    .\n```\n\n## Using `bakery`\n\nThe structure and contents of this repository were created following the steps in [bakery usage](https://github.com/posit-dev/images-shared/tree/main/posit-bakery#usage).\n\nAdditional documentation:\n- [Configuration Reference](https://github.com/posit-dev/images-shared/blob/main/posit-bakery/CONFIGURATION.md) — `bakery.yaml` schema and options\n- [Templating Reference](https://github.com/posit-dev/images-shared/blob/main/posit-bakery/TEMPLATING.md) — Jinja2 macros for Containerfile templates\n- [CI Workflows](https://github.com/posit-dev/images-shared/blob/main/CI.md) — Shared GitHub Actions workflows for building and pushing images\n\n### Prerequisites\n\nBuild prerequisites\n\n* [python](https://docs.astral.sh/uv/guides/install-python/)\n* [uv](https://docs.astral.sh/uv/getting-started/installation/)\n* [docker buildx bake](https://github.com/docker/buildx#installing)\n* [just](https://just.systems/man/en/prerequisites.html)\n* [gh](https://github.com/cli/cli#installation) (required while repositories are private)\n* `bakery`\n\n    ```shell\n    just install bakery\n    ```\n\n* `goss` and `dgoss` for running image validation tests\n\n    ```shell\n    just install-goss\n    ```\n\n* [`pre-commit`](https://pre-commit.com/) hooks (for contributors)\n\n    ```shell\n    just setup\n    ```\n\n### Build with `bakery`\n\nBy default, bakery creates an ephemeral JSON [bakefile](https://docs.bakefile.org/en/latest/language.html) to render all containers in parallel.\n\n```shell\nbakery build\n```\n\nYou can view the bake plan using `bakery build --plan`.\n\nYou can use CLI flags to build only a subset of images in the project.\n\n### Test images\n\nAfter building the container images, run the test suite for all images:\n\n```shell\nbakery run dgoss\n```\n\nYou can use CLI flags to limit the tests to run against a subset of images.\n\n## Related Repositories\n\nThis repository is part of the [Posit Container Images](https://github.com/posit-dev/images) ecosystem. To extend the Minimal image with additional languages or system dependencies, see the [extending examples](https://github.com/posit-dev/images-examples/tree/main/extending). For shared build tooling and CI workflows, see [images-shared](https://github.com/posit-dev/images-shared).\n\n## Share your Feedback\n\nWe invite you to join us on [GitHub Discussions](https://github.com/posit-dev/images/discussions) to ask questions and share feedback.\n\n## Issues\n\nIf you encounter any issues or have any questions, please [open an issue](https://github.com/posit-dev/images-workbench/issues). We appreciate your feedback.\n\n## Code of Conduct\n\nWe expect all contributors to adhere to the project's [Code of Conduct](CODE_OF_CONDUCT.md) and create a positive and inclusive community.\n\n## License\n\nPosit Container Images and associated tooling are licensed under the [MIT License](LICENSE.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fposit-dev%2Fimages-workbench","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fposit-dev%2Fimages-workbench","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fposit-dev%2Fimages-workbench/lists"}