Source-to-Image
github.com
What it is
Source-to-Image is a free, Apache-2.0 toolkit for building reproducible container images from source code. It places source in a builder image, lets that container prepare the application, and outputs a ready-to-run image. A documented workflow can build from a Git repository without a Dockerfile. Builder images may provide assemble and run scripts, plus optional scripts for saving artifacts and explaining usage. Compatible builders can reuse artifacts from an earlier output when incremental settings and scripts are supplied. A .s2iignore file filters source files and directories, while .s2i/environment defines build variables that also appear in the output image. S2I can use an OnBuild strategy with images containing Dockerfile ONBUILD instructions. Examples cover Docker, OpenShift, UBI, Ruby, and WildFly. It runs on Linux, macOS, and Windows, with Docker 1.6+ and Go 1.7.1+ listed as dependencies.
Spec sheet
- What it does
- Source-to-Image (S2I) builds reproducible, runnable container images by injecting application source into a builder image.Read 15 Oct 2026 · github.com
- Purpose
- Source-to-Image is a toolkit and workflow for building reproducible container images from source code.Read 7 Oct 2026 · github.com
- Platforms
- Installation instructions cover Linux, Mac, and 64-bit Windows releases.Read 7 Oct 2026 · github.com
- Integrations
- The README documents use with Docker and gives examples using OpenShift, UBI, Ruby, and WildFly images.Read 7 Oct 2026 · github.com
- Security
- The project says S2I can control builder image permissions and privileges, and that OpenShift can help admins control developer build-time privileges.Read 7 Oct 2026 · github.com
- License
- The repository is released under the Apache License 2.0.Read 15 Oct 2026 · github.com
- API and SDK surface
- The published interface is a Go-based CLI with documented subcommands; the README does not describe a hosted HTTP API or official SDKs.Read 15 Oct 2026 · github.com
- Build customization
- Builder images can supply assemble and run scripts, with optional save-artifacts and usage scripts.Read 7 Oct 2026 · github.com
- Build inputs
- s2i build accepts a source location, builder image and optional output tag, with flags for environment, users, scripts and destinations.Read 15 Oct 2026 · github.com
- Builder customization
- OpenShift documentation says teams can customize S2I builder images and wrap embedded scripts to add application-specific behavior.Read 15 Oct 2026 · docs.redhat.com
- Builder scripts
- Builder images use assemble and run scripts, with optional save-artifacts and usage scripts.Read 15 Oct 2026 · github.com
- CLI commands
- The CLI documents create, build, rebuild, generate, usage, version and help commands.Read 15 Oct 2026 · github.com
- Company founding
- Red Hat says it was founded in 1993.Read 15 Oct 2026 · redhat.com
- Company headquarters
- Red Hat lists its headquarters address as 100 E. Davie Street, Raleigh, North Carolina 27601.Read 15 Oct 2026 · redhat.com
- Company legal name
- Crunchbase identifies the maker as Red Hat Inc., an IBM subsidiary.Read 15 Oct 2026 · crunchbase.com
- Company ownership
- Red Hat says it has been joined with IBM since 2019, while IBM's acquisition announcement says Red Hat would remain a distinct unit.Read 15 Oct 2026 · redhat.com
- Company size
- LinkedIn lists Red Hat as having more than 10,001 employees and headquarters in Raleigh, North Carolina.Read 15 Oct 2026 · linkedin.com
- Company workforce fact
- Red Hat's company brief reports more than 19,000 employees across 100 locations in over 40 countries.Read 15 Oct 2026 · redhat.com
- Dependencies
- The README lists Docker 1.6 or later and Go 1.7.1 or later as dependencies, with Git optional.Read 7 Oct 2026 · github.com
- Docker access warning
- The security notes say Docker group membership effectively grants root access and recommend sudo on recent Fedora/RHEL systems as more auditable and secure.Read 7 Oct 2026 · github.com
- Docker integration
- The documented default Docker socket is unix:///var/run/docker.sock, and S2I uses Docker client functionality for builds.Read 15 Oct 2026 · github.com
- Dockerfile alternative
- The README demonstrates building and running an image from a Git repository without a Dockerfile.Read 7 Oct 2026 · github.com
- Dockerfile-free builds
- The project can build an application image directly from a Git repository without requiring a Dockerfile.Read 15 Oct 2026 · github.com
- Environment variables
- Values in .s2i/environment are passed into the build and remain available in the resulting application image.Read 15 Oct 2026 · github.com
- How it works
- It injects source code into a builder container image, lets the container prepare the source for execution, and produces a ready-to-run image.Read 7 Oct 2026 · github.com
- Image support
- S2I recognizes container images with Dockerfile ONBUILD instructions and can use an OnBuild strategy.Read 7 Oct 2026 · github.com
- Incremental builds
- When a compatible prior image and save-artifacts script exist, S2I can reuse streamed build artifacts for incremental builds.Read 15 Oct 2026 · github.com
- Independent comparison criticism
- Northflank describes OpenShift, where S2I is a developer workflow, as potentially expensive, complex and tied to the Red Hat ecosystem.Read 15 Oct 2026 · northflank.com
- Independent praise
- Northflank credits OpenShift's S2I tooling and web console with improving developer workflows and application delivery.Read 15 Oct 2026 · northflank.com
- Installation methods
- The project documents Go installation, Homebrew on macOS, downloadable Linux and Windows binaries, and building from source.Read 15 Oct 2026 · github.com
- Latest release activity
- GitHub lists source-to-image v1.6.3 released on July 23, with dependency and build changes.Read 15 Oct 2026 · github.com
- Limit: Docker dependency
- The same architecture document criticizes S2I for using the Docker daemon internally and limiting builder choices.Read 15 Oct 2026 · mico-docs.readthedocs.io
- Limit: OpenShift focus
- An independent architecture document says S2I is designed for OpenShift and requires additional effort on plain Kubernetes.Read 15 Oct 2026 · mico-docs.readthedocs.io
- Limit: unprivileged builds
- FAUN.dev identifies unprivileged builds as S2I's weakest scored area, rating that criterion 50/100.Read 15 Oct 2026 · faun.dev
- ONBUILD support
- S2I recognizes Docker ONBUILD images and can combine their instructions with an assemble script.Read 15 Oct 2026 · github.com
- OpenShift console
- S2I builder images are available through the OpenShift Developer Console's Builder Images catalog.Read 15 Oct 2026 · docs.redhat.com
- OpenShift integration
- Red Hat documents S2I as an OpenShift build process that copies source into a builder image, runs assemble and sets run as the default command.Read 15 Oct 2026 · docs.redhat.com
- Praise: ease of use
- FAUN.dev gives S2I an 86/100 ease-of-use score because a single s2i build command can combine a repository and builder image into a runnable image.Read 15 Oct 2026 · faun.dev
- Praise: maturity
- FAUN.dev scores maturity and stability at 86/100 and describes the project as used within OpenShift with continuing releases.Read 15 Oct 2026 · faun.dev
- Rating on FAUN.dev
- 68 out of 100 from an unstated number of community votes.Read 15 Oct 2026 · faun.dev
- Release correction
- Release v1.6.1 was published on March 11 and exists to correct a tag/cache problem involving v1.6.0 and the v1.5.1 commit.Read 15 Oct 2026 · github.com
- Reviewer limit
- AWS Marketplace feedback reports that local OpenShift setup can require substantial physical resources and is difficult to make lightweight.Read 15 Oct 2026 · aws.amazon.com
- Reviewer praise
- An AWS Marketplace reviewer says OpenShift's source-to-image capability helps significantly alongside operators, CI/CD, monitoring and observability.Read 15 Oct 2026 · aws.amazon.com
- Reviewer support complaint
- Another AWS Marketplace review reports that urgent OpenShift support cases sometimes take substantial time to resolve and may initially lack senior engineers.Read 15 Oct 2026 · aws.amazon.com
- Security requirement
- The project warns that Docker-group membership effectively grants root access and recommends auditable sudo use on current Fedora and RHEL systems.Read 15 Oct 2026 · github.com
- Self-hosting
- S2I is distributed as a command-line binary and can be run locally or inside infrastructure controlled by the user.Read 15 Oct 2026 · github.com
- Source filtering
- A .s2iignore file supports regular-expression rules and exception rules for excluding source files from the produced image.Read 15 Oct 2026 · github.com
- Support and documentation
- The README links to command descriptions, builder-image guidance, and troubleshooting documentation.Read 7 Oct 2026 · github.com
- Supported runtimes
- Red Hat documentation describes S2I builder images for languages including Node.js, Python and Java.Read 15 Oct 2026 · docs.redhat.com
- System requirements
- The README lists Docker 1.6 or newer, Go 1.7.1 or newer and optional Git as dependencies.Read 15 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Free Apache-2.0 toolkit
- Builds from source without Dockerfiles
- Supports incremental artifact reuse
- Runs on Linux, macOS, and Windows
- Filters sources with .s2iignore
Limits
- Requires Docker 1.6 or later
- Requires Go 1.7.1 or later
- Git is only optional
- Builder-image compatibility is required for incremental builds
Who it suits
Source-to-Image suits developers and platform teams creating repeatable container builds from application source. It is relevant when builder images and script-based customization are preferred over writing Dockerfiles.
Verdict
Source-to-Image provides a scriptable path from source repositories to runnable container images, with filtering, environment settings, and optional incremental builds. Its documented dependencies and builder-image requirements should be checked before adoption.
Where Specifiction places it
- Sampler Software#6 of 268.2
- Container Build Tools#12 of 348.1